線上影片有多種格式,有時想從 html 源碼或瀏覽器 inspect 工具找影片連結又非常困難!這篇分享一個簡單的方法,透過網頁媒體嗅探工具取得連結,再利用工具下載影片,讓我們一起來學習吧!
安裝「貓抓」 chrome extension
前往 chrome 應用商店,安裝「貓抓」 chrome extension
安裝好後,我們前往任一線上看測試貓抓的嗅探能力。
網頁載入後,點開貓抓,發現他已經在背景分析網頁所有 request,並將影片相關的 request 列出清單。
一般線上看會透過 m3u8
檔案作為 index,讓瀏覽器取得 ts
檔連結清單,依序下載接續播放成「連續」的影片。因此直接下載 m3u8
是不能播放的(他只是連結清單),下載單個 ts
檔則是影片的「片段」。
我們需要透過程式模擬瀏覽器行為,解析 m3u8
裡面的資源,下載所有 ts
檔並幫我們合併成一個 mp4
檔,如此即能下載完整的影片。
安裝「N_m3u8DL-RE」
貓抓雖然內建下載 m3u8
功能,但實測後發現不太穩定,如果 ts
檔上千個容易掛掉,因此推薦使用 N_m3u8DL-RE
作為下載工具。
這是開源軟體,直接到 github 下載最新 release 的版本, 並依照你的系統和 CPU 抓對應執行檔。不清楚的話,一般 windows 用戶請下載 win-x64
的版本,mac 用戶若為 M 系列 CPU,下載 osx-arm64
的版本,反之 osx-x64
。linux 用戶請自行判斷囉!
載好後請解壓縮放在桌面備用。
安裝 ffmpeg
接下來需要安裝 ffmpeg
,因為需要透過他在背後幫我們把多個 ts
檔連結成一個 mp4
檔
- Mac 安裝方法
$ brew install ffmpeg
如果沒有 brew ,可以到官網下載安裝,安裝教學可參考此篇文章
- Linux 安裝方法
$ sudo apt install ffmpeg
- Windows 安裝方法
透過 「N_m3u8DL-RE」 下載 m3u8 檔
讓我們回到貓抓的畫面。
可以點 playlist.m3u8
項目旁的播放按鈕,貓抓會在選單裡顯示影片,讓你確認影片內容。之後點複製,將 playlist.m3u8
檔案路徑複製起來
進入終端機(命令提示字元 for windows),切換路徑到桌面(N_m3u8DL-RE
執行檔所在路徑)
# mac / linux 用戶
$ cd ~/Desktop
# windows 用戶
C:\Users\jim> cd Desktop
執行 N_m3u8DL-RE
,並將複製的 playlist.m3u8
路徑貼在後面當作參數,enter 啟動下載
# mac / linux 用戶
$ ./N_m3u8DL-RE https://xxxx.xxxx.com/playlist.m3u8
# windows 用戶
C:\Users\jim\Desktop> N_m3u8DL-RE.exe https://xxxx.xxxx.com/playlist.m3u8
程式下載完會自動將多個 ts
檔合併成一個 mp4
檔,非常貼心
熟悉後,未來下載線上看只有以下步驟:
- 開啟線上看網頁
- 點開貓抓,複製 m3u8 網址
- 到終端機,使用
N_m3u8DL-RE
貼上網址開始下載
趕快試試看吧!