如何用python免费看美剧


Posted in Python onAugust 11, 2020

最早一部《越狱》转变了我对美剧的看法。主人公scofield的聪明才智和坚强的毅力,《绝命毒师》里面主人公的中年逆袭,《纸牌屋》里面老谋深算的政客,等等,这些美剧和里面鲜活的任务,至今令人记忆尤新。

最近,又迷上了美剧,无奈多数视频平台上的美剧都是收费的。对于一个资深Pythoner,我们可以用Python自动获取美剧的网址,下载了慢慢看。

如何用python免费看美剧

我们以天天看M剧这个网站为例,来展示如何分析和下载这些内容,这里提供一种思路供大家学习。当然,我们还是得支持正版内容,这里是介绍技术,大家勿用于非法用途哦,电影下载后请遵照网站协议及时删除。

准备网址

网址大家自己找。我们在主页搜索“危机边缘”

如何用python免费看美剧

然后我们获得1-5季的网址内容,如下图

如何用python免费看美剧

我们知道了1-5季的网址信息,然后,我们来看一下每一个页面的结构。

分析页面内容

我们打开第一季的页面,看下需要获取的内容,如下图:

如何用python免费看美剧

我们需要的是每一集的网址信息(上图中红色框线中的内容),通过将各个季的每一集网址内容下载下来,按季保存为txt文件,然后使用下载工具导入下载即可。

Python如何实现

我们知道,爬取信息主要使用的一些经典库。

如何用python免费看美剧

我们这里主要使用两个经典的库requests和bs4。亲测该网站没有反爬措施,因此我们没有涉及这些内容,感兴趣的小伙伴自己学习下相关内容。

如何用python免费看美剧

我们的一般思路是这样的,下面来看下Python实现过程。

我们定义三个函数,主要代码如下:

【获取网页内容】

def getHtml(url):
return requests.get(url)

直接返回了网页的文本内容。

【获取每页网址信息】

def getInfo(html):
lst = []
bs = BeautifulSoup(html.text, 'html.parser')
urls = bs.findAll('tbody')[0]
for item in urls.findAll('a'):
lst.append((item.get("href"), item.text))
return lst

传入每一季的页面内容,以列表信息返回每一集的网址和每一集的名字。

【保存内容】

def saveInfo(name, lst):
with open('第{}季.txt'.format(name), 'w') as f:
for item in lst:
f.write(item[0] + '\n')

传入每一季的名称的该季中的每一集的网址列表,保存在本地。

做轮子

没错,简单的三步实现了我们需要的效果。下面,我们开始“造轮子”。

如何用python免费看美剧

下面我们来看看我们实现的功能。

如何用python免费看美剧

好了,我们的内容成功获取到了,然后自己下载吧!

程序扩展

聪明的小伙伴一定想到了,还有很多好看的美剧呢,我们如何下载其它的内容呢?

如何下载其它视频呢?

过程同上,先到主页搜索,然后更改我们的url_list列表,执行程序即可!接触过前端的小伙伴肯定知道,每个网站的结构基本是相同的,我们这样的方法在天天看M剧的主页上应该是通用的。感兴趣的小伙伴自己下载看看咯。

到此这篇关于如何用python免费看美剧的文章就介绍到这了,更多相关Python看美剧的方法内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python中Collection的使用小技巧
Aug 18 Python
Python入门篇之编程习惯与特点
Oct 17 Python
Ubuntu 14.04+Django 1.7.1+Nginx+uwsgi部署教程
Nov 18 Python
介绍Python中几个常用的类方法
Apr 08 Python
python中map()与zip()操作方法
Feb 27 Python
Python cookbook(数据结构与算法)从序列中移除重复项且保持元素间顺序不变的方法
Mar 13 Python
pytorch + visdom 处理简单分类问题的示例
Jun 04 Python
详解Python3 pandas.merge用法
Sep 05 Python
使用python代码进行身份证号校验的实现示例
Nov 21 Python
通过Python实现一个简单的html页面
May 16 Python
关于Python不换行输出和不换行输出end=““不显示的问题(亲测已解决)
Oct 27 Python
Python爬虫自动化爬取b站实时弹幕实例方法
Jan 26 Python
Pythonic版二分查找实现过程原理解析
Aug 11 #Python
Python3合并两个有序数组代码实例
Aug 11 #Python
Python基于gevent实现文件字符串查找器
Aug 11 #Python
Python3如何实现Win10桌面自动切换
Aug 11 #Python
Python3如何使用多线程升程序运行速度
Aug 11 #Python
使用Python pip怎么升级pip
Aug 11 #Python
python中通过pip安装库文件时出现“EnvironmentError: [WinError 5] 拒绝访问”的问题及解决方案
Aug 11 #Python
You might like
用PHP实现小写金额转换大写金额的代码(精确到分)
2012/01/10 PHP
PHP+Mysql+jQuery中国地图区域数据统计实例讲解
2015/10/10 PHP
php编程每天必学之表单验证
2016/03/01 PHP
PHP单例模式是什么 php实现单例模式的方法
2016/05/14 PHP
PHP CURL采集百度搜寻结果图片不显示问题的解决方法
2017/02/03 PHP
PHP+原生态ajax实现的省市联动功能详解
2017/08/15 PHP
使用Chrome调试JavaScript的断点设置和调试技巧
2014/12/16 Javascript
js日期范围初始化得到前一个月日期的方法
2015/05/05 Javascript
js当前页面登录注册框,固定div,底层阴影的实例代码
2016/10/04 Javascript
ThinkJS中如何使用MongoDB的CURD操作
2016/12/13 Javascript
解决nodejs中使用http请求返回值为html时乱码的问题
2017/02/18 NodeJs
vue移动端实现下拉刷新
2018/04/22 Javascript
小程序实现展开/收起的效果示例
2018/09/22 Javascript
如何用原生js写一个弹窗消息提醒插件
2019/05/24 Javascript
JS实现进度条动态加载特效
2020/03/25 Javascript
简单介绍Python中的round()方法
2015/05/15 Python
分享Python字符串关键点
2015/12/13 Python
浅谈Python由__dict__和dir()引发的一些思考
2017/10/30 Python
python随机取list中的元素方法
2018/04/08 Python
python list是否包含另一个list所有元素的实例
2018/05/04 Python
Pycharm运行加载文本出现错误的解决方法
2019/06/27 Python
python nmap实现端口扫描器教程
2020/05/28 Python
解决PDF 转图片时丢文字的一种可能方式
2021/03/04 Python
CSS3结构性伪类选择器九种写法
2012/04/18 HTML / CSS
推荐一些比较有用的css3新属性
2014/11/11 HTML / CSS
利用HTML5画出一个坦克的形状具体实现代码
2013/06/20 HTML / CSS
日本网路线上商品代购服务:转送JAPAN
2016/08/05 全球购物
Annoushka英国官网:英国奢侈珠宝品牌
2018/10/20 全球购物
政府个人对照检查材料思想汇报
2014/10/08 职场文书
2015年教师个人业务工作总结
2015/10/23 职场文书
公司趣味运动会开幕词
2016/03/04 职场文书
2019年大学毕业生个人自我鉴定范文大全
2019/03/21 职场文书
CSS 圆形进度栏
2021/04/06 HTML / CSS
go语言使用Casbin实现角色的权限控制
2021/06/26 Golang
Java实现聊天机器人完善版
2021/07/04 Java/Android
Docker官方工具docker-registry案例演示
2022/04/13 Servers