第一部《越狱》改变了我对美剧的看法。主人公斯科菲尔德的聪明与毅力,《绝命毒师》中主人公的中年逆袭,《纸牌屋》中心机重重的政客等等,这些美剧和其中生动的任务还是让人印象深刻。新的。
最近又迷上了美剧,但是视频平台上的美剧大多是收费的。对于有经验的Pythoner,我们可以用Python自动获取美剧的网址,下载下来慢慢看。
下面以天天看M剧网站为例,说明如何分析下载这些内容。这里提一个思路供大家学习。当然,我们还是要支持正版内容。下面是该技术的介绍。请不要将其用于非法目的。下载电影后,请你根据网站协议及时删除。
准备网址
网址大家自己找。我们在主页搜索“危机边缘”
然后我们获得1-5季的网址内容,如下图
我们知道了第1-5季的URL信息,接下来,我们来看一下各个页面的结构。
分析页面内容
我们打开第一季的页面,看看我们需要获取什么,如下图:
我们需要的是每一集的URL信息(上图红框内的内容),通过下载每一季每一集的URL内容,按季保存为txt文件,然后使用下载工具导入和下载。
Python如何实现
我们知道,爬取信息主要使用的一些经典库。
我们这里主要使用两个经典库requests和bs4。本人亲测网站没有反爬措施,所以我们不涉及这些内容,有兴趣的朋友可以自行了解相关内容。
我们的大体思路是这样的,下面看一下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
传入每一季的页面内容,并以列表的形式返回每一集的URL和名称。
【保存内容】
def saveInfo(name, lst):
with open('第{}季.txt'.format(name), 'w') as f:
for item in lst:
f.write(item[0] + '\n')
以每个季节的名称传递的每个季节的每一集的 url 列表,保存在本地。
做轮子
没错,简单的三个步骤就达到了我们需要的效果。接下来,我们开始“造轮子”。
下面我们来看看我们实现的功能。
好了,我们的内容已经成功获取了,接下来就自己下载吧!
程序扩展
聪明的朋友一定想到了。好看的美剧还是有很多的。我们如何下载其他内容?
如何下载其它视频呢?
过程同上,先到首页搜索,然后更改我们的url_list列表,执行程序!接触过前端的朋友一定知道,各个网站的结构基本都是一样的。我们的方法在天天看M剧的首页应该是常见的。感兴趣的朋友可以自己下载看看。
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ python中报表显示中文乱码的解决方法12/11
- ♥ python3 中的 lambda 函数是什么?如何使用?12/03
- ♥ python字符串大小写转换的3个函数09/07
- ♥ 如何在python中使用变量12/24
- ♥ python 可以免费下载01/07
- ♥ 如何从python中的字典中获取随机数据09/04
内容反馈