如何解析網頁視頻的原始地址?

比如騰訊課堂的一個視頻:ps教程-ps入門案例教學(photoshop教程)【oeasy】

一個解析器可以解析出這個視頻的地址是:http://static.video.qq.com/TPout.swf?vid=a1400po96pp

請問這是怎麼做到的?

PS: 看了chrome(network)和源代碼沒看出。


http://static.video.qq.com/TPout.swf?vid=a1400po96pp

其實變的只是後面的 vid 參數。

打開 network,在過濾器輸入 video_auth

如果你想找通用的適用所有網站的方法,沒有。因為每個網站的策略都不一樣需要單獨破解。可參考:史上最強視頻網站真實地址解析


一般有幾個辦法可以拿到視頻的原始url:

1)可以試下傲遊瀏覽器,傲遊瀏覽器在播放一個視頻頁面時,右上角有個獲取本頁上視頻文件的功能,原理是捕獲整個瀏覽器的所有http請求數據包,如果有.mp4/.flv等文件,則記錄下來地址。這種是比較簡單和兼容大部分視頻網站的辦法。

2)或者如果您用某些瀏覽器,也可以直接F12,用開發者工具,看網路請求裡面,搜.flv/.mp4/.m3u8等地址。

不過以上辦法都存在一個缺點,那就是:很多視頻網站的視頻是分段的,比如優酷上,是幾分鐘一個片段的地址。如果用上述2個辦法,都只能等視頻完整播放完成,才能拿到所有分段的url。比如一個1小時的視頻,假設分成了10段,則需要等播放完成,才能抓到全部的10個url。

那有沒有其他辦法呢,其實是有的,那就是直接分析每段的規則,甚至不需要真正去播放,就能直接一次性拿到所有的視頻分段地址。包括各種清晰度,這種速度是最快的。

這種方法則稱之為:視頻解析。可以試下我們公司的點量視頻地址解析系統:http://www.flvurl.cn。這個就可以實現上述效果。當然,如果還需要介紹裡面更深層的原理、步驟等,上面也有培訓交流模式可以提供交流。

希望這個回答可以幫到您。


http://ke.qq.com/cgi-bin/courseDetail_json?course_id=52993

然後即可找到每個視頻的 vid


點量視頻地址解析 | 點量軟體


這個是騰訊視頻中播放的某一集:那年青春我們正好 第13集

然後我們可以從url上面解析出vid:n002058txs4

其實騰訊就是通過這vid加上html擴展後綴,做了一個偽靜態頁面。

然後通過抓包取得關鍵參數,並且構建了響應的實際視頻地址,如下:

http://219.135.57.145/vlive.qqvideo.tc.qq.com/n002058txs4.p401.1.mp4?type=mp4vkey=4F47DFAF56E882082B81871E2EF1D32CDF52C1ED7A154182DB99C09F3493CF4FE9BC804465409982FEC126B694D34AFDA11EBE9756463275B26B5079495178CDB0A049B6A38B1E895105CA219E214379B0E8C534CA143B6Dfmt=shd

這段視頻實際上分為8小段,我取了其中的一段,完全跳過了騰訊視頻的廣告。(尼瑪,現在廣告確實有點長)目前是可以正常播放的。如果你們看不見,可能是參數過期了。


推薦閱讀:

anaconda是幹什麼的,是 python的第三方解釋環境嗎?
Chrome的開發者工具怎麼查看錶單數據?網路選項卡里的參數一項在哪裡?
Python輸出豆瓣個人主頁源代碼出現編碼錯誤?
如何應對網站反爬蟲策略?如何高效地爬大量數據?

TAG:前端開發 | 視頻網站 | JavaScript | HTML5 | 爬蟲計算機網路 |