親注冊登錄道勤網(wǎng)-可以查看更多帖子內(nèi)容哦。ò蕡D片、文字詳情等)請您及時注冊登錄-bmrsportswear.com
您需要 登錄 才可以下載或查看,沒有賬號?立即注冊
x
前段時間,我因公司需求。所以要去研究如何拿到視屏的播放地址。一般普通的網(wǎng)站的視屏播放地址還是很好拿到的。但是對于優(yōu)酷,騰訊這樣的大型視屏資源站就很難拿到視屏資源了。普通的網(wǎng)站你通過網(wǎng)頁就可以直接抓取到視屏的播放地址。但是這些大型就不行,這些網(wǎng)站都是做了防盜鏈的。就拿優(yōu)酷來講,首先他用了自己的SWF播放器,然后服務(wù)器會異步加載一段參數(shù)到頁面播放器上去。播放器內(nèi)部會對這些參數(shù)進(jìn)行一個解析,然后獲取到視頻的播放地址。這個解析過程是比較復(fù)雜的。 最開始我用fiddler4去抓包,還是能夠抓到很多有用信息的。最開始想用逆向JS去做,但是后來發(fā)現(xiàn)它的東西好像和JS關(guān)系不太大,然后我又用jsop去抓關(guān)鍵代碼,發(fā)現(xiàn),他的視屏信息是通過異步加載的,表示jsoup抓不到,后來仔細(xì)觀察發(fā)現(xiàn),他的請求一本都是SWF播放器發(fā)出來的,沒辦法,只能把他的SWF抓下來,做了一個反編譯后:(如果只是簡單的網(wǎng)頁套用的話,可以用它的swf然后去抓網(wǎng)頁上name="flashvars" 段的value,然后把這段value發(fā)給swf后就能播放了。)
11_已壓縮.jpg (27.82 KB, 下載次數(shù): 187)
下載附件
you-get 一個很強(qiáng)的視頻地址抓取工具的方法
2018-1-16 00:25 上傳
這邊就是主要的東西。 大概知道優(yōu)酷的大概加密方式就是 k.youku.com/player/getFlvPath+"/sid/"+$sid+"_"+No+"/st/"+thisVideoType+"/fileid/"+id 大概就是這個格式 sid 就是securityId 然后加上No(編號)然后后面的 fileId也是經(jīng)過一系列加密的,并不是簡單的ID。一般是會有一個token ,K ,ep 參數(shù)是比較重要的參數(shù) 最后拿這個地址你只是獲取到了一串能夠獲取播放地址的JSON - [{"fileid":"0300080100579F87DDDF300157E54E465E9572-D357-57B7-15CA-646DEC5748A9.mp4","server":"http://117.41.231.17/youku/696AF5871C487D59853F424D/0300080100579F87DDDF300157E54E465E9572-D357-57B7-15CA-646DEC5748A9.mp4"}]
復(fù)制代碼就如上面這個一樣,雖然server能夠獲取到視頻的地址,但是/youku/后面的那串亂碼是一個SEED加密。也就是說沒多少個小時就會變一次,也就是不可能一次拿到一個永遠(yuǎn)不變的地址的。 優(yōu)酷的視頻下載全是走的客戶端,也就是說網(wǎng)頁端想要抓取地址,普通的方法是行不通的。后來我對客戶端進(jìn)行一個數(shù)據(jù)抓包,然后驚奇的發(fā)現(xiàn)TMD根本抓不到任何有用信息,只能無奈的感嘆這客戶端太尼瑪屌了。每次我點(diǎn)擊下載新視頻后再看看抓包信息,空空如也像什么也沒發(fā)生過。沒辦反只能走反編譯的路了。。(反編譯工具免費(fèi)版只能看,,不能復(fù)制更別說調(diào)試了。。、。。我操。。。) 扯了這么多,現(xiàn)在進(jìn)入正題了。you-get 是一個強(qiáng)大的抓取視頻的工具,原理就是上面的swf反編譯后抓取了加密方式,然后對網(wǎng)頁請求進(jìn)行一個解析,然后從視屏站服務(wù)器中騙取地址出來。 首先這個語言是基于Python 的 先去官方下載最新的(至少3.0以上)的版本,因?yàn)檫@個版本自帶pip3.下好后配好環(huán)境 然后打開cmd命令 輸入 - pip3 install --upgrade you-get
復(fù)制代碼來獲取 you-get 獲取成功后基本的使用方法上面鏈接有。 接下來就是關(guān)鍵了。 如果你是只想獲取地址的話可以在前面 加 命令 - you-get --json youwannaURL
復(fù)制代碼 即可獲取到地址 通過pip3安裝的東西一般放在 你的Python文件夾/Lib/site-packages/ 下 extractor.py 是main 層后的 功能能層。 可以進(jìn)去看看 有很多方法 ,比如
22.png (54.06 KB, 下載次數(shù): 186)
下載附件
you-get 一個很強(qiáng)的視頻地址抓取工具的方法
2018-1-16 00:27 上傳
you-get URL這種不帶參數(shù)的話 就會執(zhí)行這個download 的第一個if 的else語句 直接下載視頻。如果有了 --json 參數(shù)的話,就是執(zhí)行的這個if 下載的功能在 common.py里面
33.png (39.89 KB, 下載次數(shù): 196)
下載附件
you-get 一個很強(qiáng)的視頻地址抓取工具的方法
2018-1-16 00:27 上傳
可以向我這樣加一段來輸出看;蛘哂胷eturn阻斷下載,。 回到輸出json這邊來在json_output.py 下
55.png (94.52 KB, 下載次數(shù): 194)
下載附件
you-get 一個很強(qiáng)的視頻地址抓取工具的方法
2018-1-16 00:27 上傳
可以向我這樣,選取自己需要的字段,然后用文件的形式把它輸出。皆大歡喜,拿到了地址了。 更多想要的功能可以自己改代碼~
道勤主機(jī)提供365天*24小時全年全天無休、實(shí)時在線、零等待的售后技術(shù)支持。竭力為您免費(fèi)處理您在使用道勤主機(jī)過程中所遇到的一切問題!
如果您是道勤主機(jī)用戶,那么您可以通過QQ【792472177】、售后QQ【59133755】、旺旺【詮釋意念】、微信:q792472177免費(fèi)電話、后臺提交工單這些方式聯(lián)系道勤主機(jī)客服!
如果您不是我們的客戶也沒問題,點(diǎn)擊頁面最右邊的企業(yè)QQ在線咨詢圖標(biāo)聯(lián)系我們并購買后,我們?yōu)槟赓M(fèi)進(jìn)行無縫搬家服務(wù),讓您享受網(wǎng)站零訪問延遲的遷移到道勤主機(jī)的服務(wù)! |