這套 yt-dlp 工具是 youtube-dl 的替代品,功能不但變的更多、更完整,命令列的參數選項也多到爆炸,強到沒辦法完整介紹。今天這篇文章我就來簡單分享幾個常用的命令就好。
安裝與升級
yt-dlp 工具是一套跨平台的工具,安裝方式有很多種,這邊我就簡單用 Windows 平台的 Chocolatey 來介紹安裝及升級就好,其他平台請自行看官網說明。
-
安裝
choco install yt-dlp -y
因為 yt-dlp
是一個變動很快、積極發展的開源,若是遇到有問題發生,建議更新到 nightly
版本:
yt-dlp --update-to nightly
你也可以用 Python 的 pip
安裝最新版本:
python3 -m pip install -U --pre yt-dlp
-
升級
choco upgrade yt-dlp -y
常用命令
-
下載影片 (也可下載整個播放清單)
這個簡單的命令背後,背後可支援下載高達 1,800
個不同的影音網站,知名的像是 YouTube, Twitter, Bilibili, ... 都是支援的!
yt-dlp <url>
你可以用以下命令列出所有支援的網站
yt-dlp --list-extractors
下載時指定檔名 (video
) 但保留下載影片的副檔名
yt-dlp -o "video.%(ext)s" <url>
-
下載字幕
僅下載字幕,不下載影片
yt-dlp --no-download --write-subs <url>
下載 YouTube 自動產生的字幕
yt-dlp --no-download --write-auto-sub <url>
-
下載影片和字幕,並且把字幕寫入到影片中
yt-dlp --embed-subs <url>
-
下載影片並轉換為 MP3 聲音格式
加入 -x
就是要擷取音訊部分,--audio-format mp3
就是要轉換為 MP3 格式:
yt-dlp -x --audio-format mp3 <url>
如果想在轉檔後同時保留影片檔,可以加入 -k
參數:
yt-dlp -x --audio-format mp3 -k <url>
-
限制下載速度: 限制下載速度至 500KB/s
yt-dlp -r 500K <url>
-
下載影片的特定部分 (裁剪影片)(例如前 90 秒)
yt-dlp --downloader ffmpeg --downloader-args "-ss 00:00:00 -to 00:01:30" <url>
-
從文字檔案中批次下載多個影片
yt-dlp -a file.txt
-
選擇下載 4K 影片 (如果有的話)
yt-dlp -f 'bestvideo[height=2160]+bestaudio/best[height=2160]' <url>
如果想查詢影片網址有提供哪些可用的格式,可以用以下命令:
yt-dlp --list-formats <url>
yt-dlp -F <url>
-
下載一組播放清單中特定日期之後釋出的影片
yt-dlp --date 20240306 <url>
-
如果遇到錯誤則跳過繼續下載 (下載多部影片時可用)
yt-dlp -i <url>
-
取得下載影片的副檔名
yt-dlp.exe --print "ext" <url>
yt-dlp.exe --print "%(.{ext})j" <url>
-
使用 JSON 格式取得影片的詳細資訊
yt-dlp.exe -j <url>
-
不要顯示下載進度
yt-dlp --no-progress <url>
-
忽略 yt-dlp 的 config
設定檔
預設 yt-dlp
的設定檔位於 %APPDATA%\yt-dlp\config
路徑下,如果要避免被現有設定影響,可以加入 --ignore-config
排除預設設定檔的載入。
yt-dlp --ignore-config <url>
詳見 CONFIGURATION
-
下載 Twitter 影片
因為 yt-dlp
預設的輸出檔名為 %(title)s.%(ext)s
格式,在下載 Twitter 影片時,可能會遇到檔名不合法的問題,這時可以用以下命令來解決:
yt-dlp --output "%(uploader)s_%(upload_date)s_%(id)s.%(ext)s" --merge-output-format mp4 --embed-thumbnail <url>
相關連結