一、前言
好想看電視啊!!沒有會員,怎么辦啊?想在線觀看或下載愛奇藝、PPTV、優酷、網易公開課、騰訊視頻、搜狐視頻、樂視、土豆、A站、B站等主流視頻網站的VIP視頻?又不想充會員怎么辦?今天給你分享Python小技巧,實作你的VIP看電視的夢想,
PS:本軟體只用來交流學習,請勿用于商業用途,如涉及著作權侵權等問題,請聯系我,我會洗掉文章,我可是守法的好公民….

二、軟體使用說明
1、軟體下載
軟體運行平臺:Windows
###Python學習交流Q群:906715085### 注意:該軟體已經打包成exe可執行檔案,無需Python環境即可運行,將軟體壓縮包解壓,即可使用,
運行軟體,如果誤報木馬,將此應用程式添加到信任區,或者關閉殺毒軟體,即可,PS:軟體無毒,可放心使用,


2、在線播放視頻(以愛奇藝為例講解)
在主界面我們可以選擇視頻的播放通道(默認通道一),在視頻連接文本框中輸入視頻連接,點擊播放按鈕,該助手軟體將啟動默認瀏覽器,視頻即可在線觀看,
視頻連接如何獲取呢?
在選單欄的友情鏈接的下拉串列中,我們可以選擇打開一個我們喜歡的視頻網站,比如點擊愛奇藝,默認瀏覽器將自動打開愛奇藝首頁,

選擇一部自己喜歡的電影,瀏覽器地址欄的內容即為視頻連接,
降龍大師:URL:http://www.iqiyi.com/v_19rrb2yq04.html?fc=8b62d5327a54411b#vfrm=19-9-0-1

在助手軟體文本輸入框中輸入地址,點擊播放即可在線觀看視頻:


3、視頻下載(以愛奇藝為例講解 )
注意:暫只支持愛奇藝和優酷的視頻下載,視頻在線觀看不受影響,
點擊選單,出現下拉選單,在下拉選單選擇視頻下載(注意:請先添加視頻連接)

此時,默認瀏覽器會打開網頁,等待幾秒鐘,待加載完成,點擊下圖按鈕,即可通過瀏覽器下載視頻,

三、代碼撰寫
介紹完該助手軟體,進入本次爬蟲教程的正題:視頻抓包
1、軟體原理:
a)視頻播放
在講解視頻抓包之前,先介紹下兩個視頻決議網站:
?VIP視頻決議:http://www.vipjiexi.com/
?無名小站:http://www.wmxz.wang/
這兩個網站為我們提供了免費的視頻決議,他們的通用決議方式是:
?VIP視頻決議:http://www.vipjiexi.com/tong.php?url=[播放地址或視頻id]
?無名小站:http://www.wmxz.wang/video.php?url=[播放地址或視頻id]
筆者正式呼叫了這兩個網站,實作視頻在線播放的,至于,視頻下載界面如何調出,即是本文的重點,
b)視頻下載
這兩個網站均沒有提供下載功能,當然如果你使用chrome視頻抓包插件,也可以實作視頻的下載,例如使用chrome插件:Flash Video Downloader,不過為了學習,我們使用python程式進行抓包,因此,筆者使用無名小站進行視頻下載,對無名小站視頻進行抓包分析,
看過筆者之前的Python3網路爬蟲的讀者,一定知道如何進行抓包分析,在這里不再啰嗦,直接進入正題:我們可以看到這里有一個POST請求,Form Data中有兩個引數,一個是up,另一個是url,因此,我們向服務器發送這個資料請求,對回傳的資料進行json決議,即可得到視頻的真實地址,打開這個視頻的真實地址,就會出現之前介紹的現在視頻的瀏覽器界面,僅僅這樣就可以了嗎?其實不然,因為如果你單純使用這種方法,我們只能下載我們抓包分析時的視頻,因為,這個url是隨著我們決議視頻的不同而改變的,因此如何獲取這個改變的url,成為我們下一步的重點,

繼續分析我們會發現在發送POST請求之前,有一個GET請求,如果我們向這個Request URL的地址發送GET請求,你會驚奇的發現,回傳的資訊里包含我們需要的url資訊,

它是這個樣子的:

瞧,url我們就這樣得到了,通過相應的決議,提取出url資訊,并將這個url資訊作為之前提到的POST請求的Form Data,這樣我們就可以得到真實的視頻地址,通過該地址即可進行視頻下載,代碼如下:

運行結果如下圖所示:

在瀏覽器中打開這個地址,即可出現上面提到的視頻下載界面,同時,更改代碼中的ip,即視頻連接地址,即可決議不同的視頻的真實視頻地址,并對其進行下載,

2、Tkinter
該助手軟體的界面是使用Python的Tkinter設計的,由于本部分內容不是Python網路爬蟲的重點,因此不在此進行講解,
四、總結
除此之外,軟體也有很多需要改進的地方,比如,視頻的下載是在瀏覽器中進行的,操作不友好,可以使用該軟體直接下載,選擇下載路徑,實作一鍵下載,同時,視頻下載暫只支持愛奇藝和優酷的視頻下載,這里也可以進行改進,但是由于時間有限,就沒有繼續寫,后期可能會更新,沒有了,這都不點贊就過分了,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/452844.html
標籤:其他
上一篇:【JavaWeb-jQuery】筆記(3)--- jQuery中給dom物件系結事件;通過jQuery實作Ajax請求的處理
