天天看點

記一次破解blob加密視訊網站的過程

現在很多主流的視訊網站幾乎都是用到了blob的加密(其實也不算是加密),效果是隐藏了視訊源的位址,其背後的本質還是通過一段執行一段js拿到視訊的切片檔案,然後進行拼接播放。就像下面這樣的

記一次破解blob加密視訊網站的過程

其實對于普通情況來說,伺服器會傳回m3u8檔案,這個檔案相當于指引你找到各個分片檔案的目錄,然通過這個檔案,浏覽器可以不斷的請求到下一個切片檔案。是以重要是要擷取到m3u8檔案,然後爬取其各個ts分片檔案,最後自己進行拼接就行了。這裡推薦使用ffmpeg工具拼接,實乃神器。

但是有的網站會防止爬蟲,是以會搞個key檔案,這樣一來缺少key檔案的情況下拼接是不可能成功的,之前不知道的時候,用什麼格式工廠,什麼轉換大師,完全沒用,根本拼不上,就是報錯,之後才發現還有這個存在某種問題或陰謀。是以這種情況下需要同時拿到m3u8檔案與其對應的key檔案才行,當然,有時候key檔案的url位址就放在m3u8檔案裡面的,是以也可以直接通過網絡上的key檔案來拼接,就不必下載下傳到本地。

就像下面這樣:

#EXT-X-KEY:METHOD=AES-128,URI="https://xxx.com/keys/Xb2SoIWezfEzO5io1CKhUWEvVeR0Yb1bMSVGUFx3l4rhA4SxWDKruiYkgLpOgqtn.key"
           

 這次爬取的網站就用到了上面這些防爬措施。另外再加上js混淆,ip限制,refer等等,算是比較難搞的一個視訊網站了。