頭條資訊 - 為您提供最新最全的新聞資訊,每日實時更新

Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻

科技數碼 Python學習者

前言

本文的文字及圖片來源於網絡,僅供學習、交流使用,不具有任何商業用途,如有問題請及時聯繫我們以作處理。

Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻

今天群裡面有一個小夥伴發了一個鏈接,出於好奇,點擊去看了一下,然後確定試試看。

基本開發環境

Python 3.6

Pycharm

相關模塊的使用

目標網頁分析

Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻

根據小夥伴提供的地址,是關於火影博人傳的。

Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻

使用開發者工具的時候發現,有現成的mp4地址,當心裡面還在想著:

Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻

複製鏈接就自動下載了,點開一看........

Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻

Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻

怎麼是這個東西,回頭一看網頁,原來是廣告的視頻 = =

Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻

Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻

再分析

1、視頻獲取多個ts文件

其實網站的視頻數據是分為了 一個一個的TS文件,而且這些TS文件都在m3u8的鏈接當中。每一個ts文件鏈接,都是對應視頻中的一個片段,整個視頻就是又一個一個片段組合成。

Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻

Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻

既然知道了視頻的來源,那麼我們就要找到m3u8 地址的來源,並分析規律,這樣才能批量爬取ts文件數據。當然如果你m3u8的url地址,也可以用一些專門的軟件,可以直接下載併合成視頻。

Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻

2、獲取m3u8 的url地址

Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻

通過兩個鏈接的對比,可以發現有一個日期不一樣,還有一個應該就是類似ID的參數不一樣,想要找到來源,可以複製 1556_fd900088 一個關鍵參數,在開發者工具當中搜索。

Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻

這個鏈接包含的參數:

Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻

根據導航欄中的url可以發現:

ID:95 對應的應該是 博人傳這個動漫的ID

pid:175對應的應該就是多少集

後面兩個參數的都沒有傳值的,複製url地址,刪除後面兩個參數一樣可以訪問,說明這個兩個參數沒有什麼特別大的影響。

Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻

3、下載保存合併成mp4文件

Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻

先把每個ts文件都保存下來。

Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻

Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻

簡單的合併成mp4文件:

電腦一般都自帶安裝了WinRaR解壓軟件,全選ts文件後右鍵選擇添加到壓縮文件,看下圖界面,

注意1:壓縮文件名後綴要改成.MP4,

注意2:壓縮方式選擇為存儲,默認是標準是不行的。

Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻

Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻

注意點:

這樣合併的前提是你的ts文件都是0000,然後0001 這樣按照順序排列的,不然你合併出來之後播放順序是錯亂的。

如果下載的ts文件不是這樣排序的情況,需要保存整個m3u8鏈接中的數據。然後通過cmd命令的方式將所有的ts合併成一個文件:

copy /b d:\xxx\download_ts\*.ts   d:\xxx\download_ts\new.mp4

也可以使用代碼用FFmpg合併,之前爬去B站視頻合併音頻數據和視頻畫面的工具。

轉載請超鏈接註明:頭條資訊 » Python爬取網站m3u8視頻,將ts解密成mp4,合併成整體視頻
免責聲明
    :非本網註明原創的信息,皆為程序自動獲取互聯網,目的在於傳遞更多信息,並不代表本網贊同其觀點和對其真實性負責;如此頁面有侵犯到您的權益,請給站長發送郵件,並提供相關證明(版權證明、身份證正反面、侵權鏈接),站長將在收到郵件24小時內刪除。
加載中...