如何用python免費(fèi)看美劇
最早一部《越獄》轉(zhuǎn)變了我對(duì)美劇的看法。主人公scofield的聰明才智和堅(jiān)強(qiáng)的毅力,《絕命毒師》里面主人公的中年逆襲,《紙牌屋》里面老謀深算的政客,等等,這些美劇和里面鮮活的任務(wù),至今令人記憶尤新。
最近,又迷上了美劇,無奈多數(shù)視頻平臺(tái)上的美劇都是收費(fèi)的。對(duì)于一個(gè)資深Pythoner,我們可以用Python自動(dòng)獲取美劇的網(wǎng)址,下載了慢慢看。
我們以天天看M劇這個(gè)網(wǎng)站為例,來展示如何分析和下載這些內(nèi)容,這里提供一種思路供大家學(xué)習(xí)。當(dāng)然,我們還是得支持正版內(nèi)容,這里是介紹技術(shù),大家勿用于非法用途哦,電影下載后請(qǐng)遵照網(wǎng)站協(xié)議及時(shí)刪除。
準(zhǔn)備網(wǎng)址
網(wǎng)址大家自己找。我們?cè)谥黜?yè)搜索“危機(jī)邊緣”
然后我們獲得1-5季的網(wǎng)址內(nèi)容,如下圖
我們知道了1-5季的網(wǎng)址信息,然后,我們來看一下每一個(gè)頁(yè)面的結(jié)構(gòu)。
分析頁(yè)面內(nèi)容
我們打開第一季的頁(yè)面,看下需要獲取的內(nèi)容,如下圖:
我們需要的是每一集的網(wǎng)址信息(上圖中紅色框線中的內(nèi)容),通過將各個(gè)季的每一集網(wǎng)址內(nèi)容下載下來,按季保存為txt文件,然后使用下載工具導(dǎo)入下載即可。
Python如何實(shí)現(xiàn)
我們知道,爬取信息主要使用的一些經(jīng)典庫(kù)。
我們這里主要使用兩個(gè)經(jīng)典的庫(kù)requests和bs4。親測(cè)該網(wǎng)站沒有反爬措施,因此我們沒有涉及這些內(nèi)容,感興趣的小伙伴自己學(xué)習(xí)下相關(guān)內(nèi)容。
我們的一般思路是這樣的,下面來看下Python實(shí)現(xiàn)過程。
我們定義三個(gè)函數(shù),主要代碼如下:
【獲取網(wǎng)頁(yè)內(nèi)容】
def getHtml(url): return requests.get(url)
直接返回了網(wǎng)頁(yè)的文本內(nèi)容。
【獲取每頁(yè)網(wǎng)址信息】
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
傳入每一季的頁(yè)面內(nèi)容,以列表信息返回每一集的網(wǎng)址和每一集的名字。
【保存內(nèi)容】
def saveInfo(name, lst): with open('第{}季.txt'.format(name), 'w') as f: for item in lst: f.write(item[0] + '\n')
傳入每一季的名稱的該季中的每一集的網(wǎng)址列表,保存在本地。
做輪子
沒錯(cuò),簡(jiǎn)單的三步實(shí)現(xiàn)了我們需要的效果。下面,我們開始“造輪子”。
下面我們來看看我們實(shí)現(xiàn)的功能。
好了,我們的內(nèi)容成功獲取到了,然后自己下載吧!
程序擴(kuò)展
聰明的小伙伴一定想到了,還有很多好看的美劇呢,我們?nèi)绾蜗螺d其它的內(nèi)容呢?
如何下載其它視頻呢?
過程同上,先到主頁(yè)搜索,然后更改我們的url_list列表,執(zhí)行程序即可!接觸過前端的小伙伴肯定知道,每個(gè)網(wǎng)站的結(jié)構(gòu)基本是相同的,我們這樣的方法在天天看M劇的主頁(yè)上應(yīng)該是通用的。感興趣的小伙伴自己下載看看咯。
到此這篇關(guān)于如何用python免費(fèi)看美劇的文章就介紹到這了,更多相關(guān)Python看美劇的方法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python不使用for計(jì)算兩組、多個(gè)矩形兩兩間的iou方式
今天小編就為大家分享一篇python不使用for計(jì)算兩組、多個(gè)矩形兩兩間的iou方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-01-01使用Python開發(fā)個(gè)京東上搶口罩的小實(shí)例(僅作技術(shù)研究學(xué)習(xí)使用)
這篇文章主要介紹了使用Python開發(fā)個(gè)京東上搶口罩的小實(shí)例(僅作技術(shù)研究學(xué)習(xí)使用),需要的朋友可以參考下2020-03-03python?中?關(guān)于reverse()?和?reversed()的用法詳解
這篇文章主要介紹了python?中?關(guān)于reverse()?和?reversed()的用法介紹,本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-01-01Python?sklearn庫(kù)三種常用編碼格式實(shí)例
這篇文章主要為大家介紹了Python?sklearn庫(kù)三種常用編碼格式實(shí)例展示,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-09-09python GUI庫(kù)圖形界面開發(fā)之PyQt5樹形結(jié)構(gòu)控件QTreeWidget詳細(xì)使用方法與實(shí)例
這篇文章主要介紹了python GUI庫(kù)圖形界面開發(fā)PyQt5樹形結(jié)構(gòu)控件QTreeWidget詳細(xì)使用方法與實(shí)例,需要的朋友可以參考下2020-03-03python機(jī)器學(xué)習(xí)實(shí)現(xiàn)oneR算法(以鳶尾data為例)
本文主要介紹了python機(jī)器學(xué)習(xí)實(shí)現(xiàn)oneR算法(以鳶尾data為例),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03python非阻塞式后臺(tái)如何運(yùn)行bat腳本
這篇文章主要介紹了python非阻塞式后臺(tái)如何運(yùn)行bat腳本問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-06-06