如何用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获取DLL和EXE文件版本号的方法
Mar 10 Python
Python使用poplib模块和smtplib模块收发电子邮件的教程
Jul 02 Python
pandas pivot_table() 按日期分多列数据的方法
Nov 16 Python
python利用小波分析进行特征提取的实例
Jan 09 Python
基于python生成器封装的协程类
Mar 20 Python
详解Python 中sys.stdin.readline()的用法
Sep 12 Python
tensorflow指定CPU与GPU运算的方法实现
Apr 21 Python
Python decimal模块使用方法详解
Jun 08 Python
详解Python设计模式之策略模式
Jun 15 Python
深入理解Python 多线程
Jun 16 Python
如何在VSCode下使用Jupyter的教程详解
Jul 13 Python
Django Model层F,Q对象和聚合函数原理解析
Nov 12 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
Linux下 php5 MySQL5 Apache2 phpMyAdmin ZendOptimizer安装与配置[图文]
2008/11/18 PHP
php 清除网页病毒的方法
2008/12/05 PHP
详解cookie验证的php应用的一种SSO解决办法
2017/10/20 PHP
ThinkPHP 3使用OSS的方法
2018/07/19 PHP
PHP工厂模式、单例模式与注册树模式实例详解
2019/06/03 PHP
音乐播放用的的几个函数
2006/09/07 Javascript
仿校内登陆框,精美,给那些很厉害但是没有设计天才的程序员
2008/11/24 Javascript
Jquery 组合form元素为json格式,asp.net反序列化
2009/07/09 Javascript
jquery 学习之二 属性(html()与html(val))
2010/11/25 Javascript
JavaScript 代码压缩工具小结
2012/02/27 Javascript
鼠标移到div,浮层显示明细,弹出层与div的上边距左边距重合(示例代码)
2013/12/14 Javascript
兼容所有浏览器的js复制插件Zero使用介绍
2014/03/19 Javascript
jQuery ajax serialize() 方法使用示例
2014/11/02 Javascript
详谈jQuery操纵DOM元素属性 attr()和removeAtrr()方法
2015/01/22 Javascript
在JavaScript中操作时间之getYear()方法的使用教程
2015/06/11 Javascript
JS版元素周期表实现方法
2015/08/05 Javascript
Js获取当前日期时间及格式化代码
2016/09/17 Javascript
微信小程序开发的四十个技术窍门总结(推荐)
2017/01/23 Javascript
vue数据双向绑定的注意点
2017/06/23 Javascript
JS switch判断 三目运算 while 及 属性操作代码
2017/09/03 Javascript
[02:31]2018年度DOTA2最具人气选手-完美盛典
2018/12/16 DOTA
python下载文件时显示下载进度的方法
2015/04/02 Python
深入讲解Python中的迭代器和生成器
2015/10/26 Python
一键搞定python连接mysql驱动有关问题(windows版本)
2016/04/23 Python
PyCharm 在Windows的有用快捷键详解
2020/04/07 Python
多视角3D逼真HTML5水波动画
2016/03/03 HTML / CSS
杭州-飞时达软件有限公司.net笔面试
2012/04/28 面试题
StringBuilder和String的区别
2015/05/18 面试题
学生自我鉴定模板
2013/12/30 职场文书
给酒店员工的表扬信
2014/01/11 职场文书
中学生关于梦想的演讲稿
2014/08/22 职场文书
预备党员期盼十八届四中全会召开思想汇报
2014/10/17 职场文书
孕妇离婚协议书范本
2014/11/20 职场文书
小学感恩节活动总结
2015/03/24 职场文书
祝福语集锦:给满月宝宝的祝福语
2019/11/20 职场文书
MySQL数据库之内置函数和自定义函数 function
2022/06/16 MySQL