777亚洲精品乱码久久久久久,后宫宫妃被各种sm调教,美景之屋在线观看,a片毛在线视频免费观看

二維碼
微世推網

掃一掃關注

當前位置: 首頁 » 企業商訊 » 汽車行業 » 正文

使用python下載網頁上的m3u8可以嗎流

放大字體  縮小字體 發布日期:2023-05-07 00:09:54    作者:何洱維    瀏覽次數:393
導讀

有時候,我們在網頁上追劇得時候,出于各種原因,希望將這些視頻下載到本地。接下來,我們用python擼一段代碼來實現。1 抓包:獲取.m3u8得請求地址具體步驟:在瀏覽器中打開視頻網頁F12打開開發者工具,并切換至網絡

有時候,我們在網頁上追劇得時候,出于各種原因,希望將這些視頻下載到本地。接下來,我們用python擼一段代碼來實現。

1 抓包:獲取.m3u8得請求地址

具體步驟:

在瀏覽器中打開視頻網頁F12打開開發者工具,并切換至網絡標簽刷新該網頁,發現網絡得列表中加載了多個請求
在篩選器框中,輸入m3u8過濾其他無關得請求
點擊m3u8請求,切換至預覽,確認下請求文本是否是ts文件得請求列表,如果是,說明我們抓取得地址是正確得,ts文件是視頻在線播放時,被切割得視頻片段,我們專業從中任意復制一條,在瀏覽器中打開,瀏覽器會自動彈出下載該文件得對話框,下載完成后,其實是專業用視頻播放軟件播放該視頻得。2 擼代碼2.1 使用requests,請求上一步得.m3u8結尾得url

import requestsfrom fake_useragent import UserAgent# .m3u8得請求地址url = 'https://m3u.haiwaikan/xm3u8/c67187e521c6459f9cdd4731bff1e96e3c32d6d99d6c4f68be0469232320c8389921f11e97d0da21.m3u8'# 設置代理(有些網站需要最新科學上網才能訪問)proxies = {"https": "127.0.0.1:10887"}# 將請求包裝成瀏覽器端訪問,防止有些網站反爬蟲ua = UserAgent()headers = {'User-Agent': ua.random}response = requests.get(url, headers=headers, proxies=proxies)content = response.textprint(content)

debug看下已經拿到了ts文件列表了

2.2 解析上面得響應結果,提取ts鏈接列表

# 將文本拆分為行lines = content.split('\n')ts_urls = []# 遍歷文本提取ts視頻片段得地址for i in range(0, len(lines)):if lines[i].startswith("https:"):ts_urls.append(lines[i])2.3 遍歷ts鏈接列表,使用requests逐個訪問各個列表,將結果寫入本地磁盤,該步驟會在盤符下生成多個ts文件;

# 指定保存得文件路徑:因為權限問題,該路徑必須先創建好save_dir = '/Users/zhaoyang/Downloads/ts_demo/'for i in range(0, len(ts_urls)):ts_resp = requests.get(ts_urls[i], headers=headers, proxies=proxies)with open(save_dir + 'video_' + str(i) + '.ts', 'wb') as f:f.write(ts_resp.content)2.4 將多個ts文件合并一個大得ts文件

with open(save_dir + 'all.ts', 'wb') as outfile:for i in range(0, 351):file_name = save_dir + 'video_' + str(i) + '.ts'with open(file_name, 'rb') as infile:outfile.write(infile.read())

多個ts文件合并成大文件

2.5 使用ffmpeg將大得.ts文件轉換成.mp4

需要在電腦上安裝好ffmpeg,并添加到環境變量

# 轉換為MP4格式subprocess.call(['ffmpeg', '-i', save_dir + 'all.ts', '-c', 'copy', save_dir + 'output.mp4'

 
(文/何洱維)
免責聲明
本文僅代表發布者:何洱維個人觀點,本站未對其內容進行核實,請讀者僅做參考,如若文中涉及有違公德、觸犯法律的內容,一經發現,立即刪除,需自行承擔相應責任。涉及到版權或其他問題,請及時聯系我們刪除處理郵件:weilaitui@qq.com。
 

Copyright?2015-2025 粵公網安備 44030702000869號

粵ICP備16078936號

微信

關注
微信

微信二維碼

WAP二維碼

客服

聯系
客服

聯系客服:

24在線QQ: 770665880

客服電話: 020-82301567

E_mail郵箱: weilaitui@qq.com

微信公眾號: weishitui

韓瑞 小英 張澤

工作時間:

周一至周五: 08:00 - 24:00

反饋

用戶
反饋

主站蜘蛛池模板: 聂拉木县| 鲁山县| 沙湾县| 邮箱| 中西区| 五常市| 醴陵市| 柳河县| 南皮县| 固原市| 湖口县| 东光县| 镇远县| 额尔古纳市| 镇远县| 泰来县| 信阳市| 始兴县| 靖远县| 贡觉县| 山阴县| 康平县| 河间市| 泽库县| 民勤县| 卫辉市| 前郭尔| 河池市| 明光市| 凌源市| 宁明县| 永登县| 宿松县| 平江县| 泽普县| 庄浪县| 永川市| 兰州市| 甘洛县| 泌阳县| 菏泽市|