yt-dlp使用
tl;dr
下載畫面+聲音+簡體中文字幕+檔案格式為mp4:
yt-dlp -S res:144 --write-subs --sub-langs zh --merge-output-format mp4 https://www.youtube.com/watch?v=U_LlX4t0A9I
下載影片和音訊:
yt-dlp -S res:下載的解析度
下載音訊:
yt-dlp -x
只下載簡中字幕:
yt-dlp --write-subs --sub-langs "zh-Hans" --no-download
tl;dr主要給已經閱讀過的人進行復制貼上命令來下載影片,需要進一步解釋請往下看。
簡介
yt-dlp
是一款用來下載油管影片的命令列軟體,全稱為youtube-downloadproject
,指出全稱是為了方便記憶。
下載的影片格式化一般是webm
,音訊一般是mp4a
。
專案地址:https://github.com/yt-dlp/yt-dlp
需要的軟體:
python
(必選)
ffmpeg
(可選,但推薦)
安裝軟體
安裝python
下載ffmpeg
到非中文名資料夾
將ffmpeg
的bin資料夾新增到屬於系統的環境變數下的Path
安裝yt-dlp
:pip install yt-dlp
更新yt-dlp
到最新版本
pip install --update yt-dlp
下載影片(畫面+音訊)
下載最高解析度的影片: yt-dlp <ulr>
下載指定解析度的影片:yt-dlp -S 'res:下載的解析度' <url>
檢視影片有哪些東西可以下載:yt-dlp -list-formats <url>
下載影片的特定內容:yt-dlp -f <id+id...>
,這些id是從yt-dlp -list-formats <url>
獲取的
下載音訊
下載音訊:yt-dlp -x <url>
,預設選擇最好的
下載字幕
下載的字幕預設和影片同名,下載完成後軟體可以自動讀取,只需要字幕和影片在同一個資料夾。
如果複製貼上發現下載錯誤,列出所有字幕在選擇對應下載。
列出可以下載的所有字幕
yt-dlp --list-subs <url>
下載簡體中文字幕
yt-dlp --write-subs --sub-langs zh-Hans --no-download <url>
下載繁體中文字幕
yt-dlp --write-subs --sub-langs zh-Hant --no-download <url>
下載英語字幕
yt-dlp --write-subs --sub-langs en --no-download <url>
下載自動翻譯的字幕(英文轉中文)
yt-dlp --write-auto-subs --sub-langs zh-Hans-en --no-download <url>
轉換檔案格式為mp4
在url
前加上--merge-output-format mp4
列出所有可以下載的東西
yt-dlp --list-formats https://www.youtube.com/watch?v=U_LlX4t0A9I
下載列出的東西
yt-dlp -f
id從yt-dlp --list-formats
獲取
例子&解釋
下載有中文字幕的影片
yt-dlp -S res:144 --write-subs --sub-langs zh --merge-output-format mp4 https://www.youtube.com/watch?v=U_LlX4t0A9I
解釋:
選項和引數 | 解釋 |
---|---|
-S res:144 | 影片的解析度:144p |
--write-subs | 下載影片同時下載字幕 |
--sub-langs zh | 字幕的語言為zh |
--merge-output-format mp4 | 輸出格式為mp4 |
下載機器翻譯字幕的影片
獲取所有字幕:yt-dlp --list-subs <url>
,會出現下列表格
Language | Name | Format |
---|---|---|
en | 英文字幕 | 格式:xxx |
zh | 中文字幕 | xxx |
zh-Hans-en | Chinese (Simplified) from English | xxx |
選擇對應的的下載就可以,需要將--write-subs
換為--wirte-auto-subs
下載機器翻譯字幕的影片的命令列:
yt-dlp -S res:144 --write-auto-subs --sub-langs zh-Hans-en --merge-output-format mp4 https://www.youtube.com/watch?v=U_LlX4t0A9I