如何用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中的类与对象之描述符详解
Mar 27 Python
python输出当前目录下index.html文件路径的方法
Apr 28 Python
python中lambda与def用法对比实例分析
Apr 30 Python
浅谈Pycharm调用同级目录下的py脚本bug
Dec 03 Python
python 整数越界问题详解
Jun 27 Python
使用Python刷淘宝喵币(低阶入门版)
Oct 30 Python
Django 实现xadmin后台菜单改为中文
Nov 15 Python
python使用Thread的setDaemon启动后台线程教程
Apr 25 Python
python3字符串输出常见面试题总结
Dec 01 Python
Ubuntu20.04环境安装tensorflow2的方法步骤
Jan 29 Python
使用pipenv管理python虚拟环境的全过程
Sep 25 Python
python实现一个简单的贪吃蛇游戏附代码
Jun 28 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写的加密函数,支持私人密钥(详细介绍)
2013/06/09 PHP
php curl获取网页内容(IPV6下超时)的解决办法
2013/07/16 PHP
php使用cookie保存用户登录的用户名实例
2015/01/26 PHP
php遍历删除整个目录及文件的方法
2015/03/13 PHP
简要剖析PHP的Yii框架的组件化机制的基本知识
2016/03/17 PHP
php 截取GBK文档某个位置开始的n个字符方法
2017/03/08 PHP
laravel excel 上传文件保存到本地服务器功能
2019/11/14 PHP
Yii框架多语言站点配置方法分析【中文/英文切换站点】
2020/04/07 PHP
PHP执行普通shell命令流程解析
2020/08/24 PHP
可实现多表单提交的javascript函数
2007/08/01 Javascript
Jquery+WebService 校验账号是否已被注册的代码
2010/07/12 Javascript
js 判断上传文件大小及格式代码
2013/11/13 Javascript
一个js导致的jquery失效问题的解决方法
2013/11/27 Javascript
javascript中加var和不加var的区别 你真的懂吗
2016/01/06 Javascript
JS对HTML表格进行增删改操作
2016/08/22 Javascript
基于JavaScript实现鼠标箭头移动图片跟着移动
2016/08/30 Javascript
JS在浏览器中解析Base64编码图像
2017/02/09 Javascript
Bootstrap弹出框(Popover)被挤压的问题小结
2017/07/11 Javascript
使用express+multer实现node中的图片上传功能
2018/02/02 Javascript
React 组件转 Vue 组件的命令写法
2018/02/28 Javascript
在vue中使用v-bind:class的选项卡方法
2018/09/27 Javascript
js控制随机数生成概率代码实例
2019/03/21 Javascript
vue 实现把路由单独分离出来
2020/08/13 Javascript
JavaScript 绘制饼图的示例
2021/02/19 Javascript
[54:18]DOTA2-DPC中国联赛 正赛 PSG.LGD vs LBZS BO3 第一场 1月22日
2021/03/11 DOTA
Python3标准库总结
2019/02/19 Python
在Python中append以及extend返回None的例子
2019/07/20 Python
python或C++读取指定文件夹下的所有图片
2019/08/31 Python
Python 实现一行输入多个数字(用空格隔开)
2020/04/29 Python
英国创新设计文具、卡片和礼品包装网站:Paperchase
2018/07/14 全球购物
为什么要优先使用同步代码块而不是同步方法?
2013/01/30 面试题
应用化学专业职业生涯规划书
2014/01/22 职场文书
司法局群众路线教育实践活动整改措施
2014/09/17 职场文书
2014年政府采购工作总结
2014/12/09 职场文书
社会治安综合治理责任书
2015/01/29 职场文书
2016党校学习心得体会范文
2016/01/07 职场文书