如何用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库urllib与urllib2主要区别分析
Jul 13 Python
python多重继承新算法C3介绍
Sep 28 Python
详解Python编程中包的概念与管理
Oct 16 Python
Python设计模式编程中Adapter适配器模式的使用实例
Mar 02 Python
利用Python如何生成hash值示例详解
Dec 20 Python
Python 判断文件或目录是否存在的实例代码
Jul 19 Python
Python3的介绍、安装和命令行的认识(推荐)
Oct 20 Python
如何使用repr调试python程序
Feb 28 Python
Python3监控windows,linux系统的CPU、硬盘、内存使用率和各个端口的开启情况详细代码实例
Mar 18 Python
如何在django中实现分页功能
Apr 22 Python
解决Tensorflow2.0 tf.keras.Model.load_weights() 报错处理问题
Jun 12 Python
python中的列表和元组区别分析
Dec 30 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基础知识:类与对象(4) 范围解析操作符(::)
2006/12/13 PHP
PHP 身份证号验证函数
2009/05/07 PHP
PHP中MVC模式的模板引擎开发经验分享
2011/03/23 PHP
PHP file_get_contents函数读取远程数据超时的解决方法
2015/05/13 PHP
js 限制数字 js限制输入实现代码
2012/12/04 Javascript
javascript学习(二)javascript常见问题总结
2013/01/02 Javascript
JS实现标签页效果(配合css)
2013/04/03 Javascript
Javascript基础 函数“重载” 详细介绍
2013/10/25 Javascript
用javascript对一个json数组深度赋值示例
2014/07/27 Javascript
浅谈javascript面向对象程序设计
2015/01/21 Javascript
JQuery给网页更换皮肤的方法
2015/05/30 Javascript
JavaScript计算某一天是星期几的方法
2015/08/05 Javascript
js与jquery分别实现tab标签页功能的方法
2016/11/18 Javascript
微信小程序左右滑动切换页面详解及实例代码
2017/02/28 Javascript
深入理解vue中slot与slot-scope的具体使用
2018/01/26 Javascript
React router动态加载组件之适配器模式的应用详解
2018/09/12 Javascript
bootstrap与pagehelper实现分页效果
2018/12/29 Javascript
JS异步执行结果获取的3种解决方式
2019/02/19 Javascript
layui 地区三级联动 form select 渲染的实例
2019/09/27 Javascript
vue使用swiper实现中间大两边小的轮播图效果
2019/11/24 Javascript
Pycharm 设置自定义背景颜色的图文教程
2018/05/23 Python
对Python 两大环境管理神器 pyenv 和 virtualenv详解
2018/12/31 Python
python3+PyQt5 使用三种不同的简便项窗口部件显示数据的方法
2019/06/17 Python
python多维数组分位数的求取方式
2020/03/03 Python
微软俄罗斯官方网站:Microsoft俄罗斯
2016/09/18 全球购物
锐步美国官方网站:Reebok美国
2018/01/10 全球购物
澳大利亚波西米亚风连衣裙在线商店:Fortunate One
2019/04/01 全球购物
公司中层干部的自我评价分享
2014/03/01 职场文书
团日活动总结书格式
2014/05/08 职场文书
小学数学教研活动总结
2014/07/01 职场文书
2015年乡镇流动人口工作总结
2015/05/12 职场文书
小学生读书笔记
2015/07/01 职场文书
获奖感言怎么写
2015/07/31 职场文书
家长对孩子的寒假评语
2015/10/09 职场文书
2019年市场部个人述职报告(三篇)
2019/10/23 职场文书
python中的None与NULL用法说明
2021/05/25 Python