
說到免費下載 YouTube 影片,大家第一個想到的可能是各種網頁工具,但這些工具三天兩頭失效、加廣告、還限制畫質。其實只要學會 yt-dlp,你就有了一把「萬能鑰匙」——不只 YouTube,Instagram、Twitter、Twitch,甚至國內各大影音平台,超過 1700 個網站統統能下。
yt-dlp 是命令列工具,聽起來很嚇人,但阿正老師保證:常用指令其實就那幾個,學一次就記住了。如果你真的很排斥打指令,站上也有一篇 Stacher7 圖形介面教學,滑鼠點一點就能下載,不一定要走指令路線。
但如果想要最大的彈性——下載特定畫質、只要 MP3、批次下載整個頻道,還是命令列最強。這篇就是給想把 yt-dlp 徹底學會的你準備的!
⚡ 30 秒快速上手
趕時間的話,先照這三步驟做就能下載第一支影片,其餘章節等你想深入研究再回頭看:
① 下載 yt-dlp.exe,放進一個資料夾,例如 C:\tools\yt-dlp\ → ② 打開命令提示字元,切換到該資料夾 → ③ 輸入 yt-dlp 影片網址 按下 Enter,等待下載完成。
如果要下載 4K 或需要合併影像音訊,記得往下看「Windows 安裝 yt-dlp(含 ffmpeg)」章節,把 ffmpeg 一起裝好。
不想打指令?如果你光看到「命令列」三個字就想關掉這篇文章,沒關係,站上也有滑鼠點一點就能用的版本:圖形介面可以看 Stacher7 圖形介面教學,或是走軟體路線的 YouTube Downloader HD 教學,兩篇都不用碰到黑色視窗。想繼續學指令的讀者,我們接著看下去。
文章目錄
一、yt-dlp 是什麼?和 youtube-dl 有什麼不同?
| 官方網站 | https://github.com/yt-dlp/yt-dlp |
| 最新版本 | 2026.06.17(發布日期: 2026-07-14,持續更新) |
| 支援系統 | Windows、macOS、Linux |
| 費用 | 完全免費、開源(The Unlicense) |
| 支援網站數量 | 1700 個以上 |
| 軟體下載 | [本站下載點] |
yt-dlp 是從 youtube-dl 分支出來的升級版,解決了原版更新龜速、下載限速被 YouTube 鎖定的問題。和 youtube-dl 相比,yt-dlp 的維護更活躍,功能也更多——支援 SponsorBlock 跳過廣告段落、下載品質選擇更靈活、下載速度優化更好。
它的另一個特點是高度可客製化:你可以指定影片格式、解析度、輸出資料夾、檔名規則,甚至寫成設定檔讓每次執行都自動套用。阿正老師用這個工具已經好幾年了,到現在還是找不到能取代它的選項。
二、下載 YouTube 影片合法嗎?先搞懂使用範圍
在教安裝之前,阿正老師要先把醜話說在前面:不是所有 YouTube 影片都可以隨便下載。YouTube 的服務條款原則上不允許使用者未經授權下載平台上的內容(官方 YouTube Premium/YouTube Music Premium 的離線功能除外),把受著作權保護的內容下載後再對外散布、公開播放或商業使用,在台灣也可能觸犯著作權法,公司或學校網路環境更要注意內部的使用規範。
一般來說,比較沒有爭議的使用情境包括:
- 個人備份自己的內容:自己拍攝、上傳的影片,想下載回來留存,完全沒問題。
- 取得授權或創用 CC 授權的內容:創作者明確授權下載,或標示創用 CC(Creative Commons)等開放授權的影片(仍要遵守授權條款,例如標示出處、禁止商用等)。
- 個人學習與研究用途:下載後僅供自己觀看、筆記整理,不重新上傳、不公開播放、不做二次散布。
三、Windows 安裝 yt-dlp(含 ffmpeg)
yt-dlp 在 Windows 上最簡單的做法是下載單一執行檔,不需要安裝 Python,直接跑就好。但要讓它能合併影片和音訊(尤其是 4K),還需要搭配 ffmpeg。
步驟一:下載 yt-dlp.exe
- 前往 yt-dlp GitHub Releases 頁面
- 在 Assets 清單中找到
yt-dlp.exe,點擊下載 - 建立一個資料夾,例如
C:\tools\yt-dlp\,把 yt-dlp.exe 放進去
步驟二:下載 ffmpeg
- 前往 ffmpeg Windows Builds(gyan.dev) 或 https://github.com/BtbN/FFmpeg-Builds
- 下載 ffmpeg-git-full.7z(完整版,約 80MB) (如果不知道如何下載,可以直接到[本站下載點]來下載)
- 解壓縮後,在
bin\資料夾裡找到ffmpeg.exe、ffprobe.exe、ffplay.exe - 把這三個 .exe 複製到同一個
C:\tools\yt-dlp\資料夾
步驟三:加入 PATH 環境變數(選用,但很方便)
如果想要在任何資料夾都能直接執行 yt-dlp 指令,可以把工具資料夾加入系統 PATH:
- 按下 Win + R,輸入
sysdm.cpl打開系統內容 - 點「進階」標籤 → 「環境變數」
- 在「系統變數」找到
Path,雙擊編輯 - 新增一列,輸入
C:\tools\yt-dlp,確認儲存 - 重新開啟命令提示字元,輸入
yt-dlp --version確認成功
cd C:\tools\yt-dlp 切換到工具資料夾,再執行 yt-dlp 指令,效果一樣。 四、第一次下載:最簡單的指令
安裝好之後,打開命令提示字元,輸入以下指令就能下載影片:
yt-dlp https://www.youtube.com/watch?v=影片ID
把網址換成你要下載的 YouTube 影片網址就好。yt-dlp 預設會自動選擇最高畫質,下載的檔案會存在你目前的工作目錄(也就是你在命令提示字元目前所在的資料夾)。
指定下載到特定資料夾
yt-dlp -o "D:\影片\%(title)s.%(ext)s" https://youtu.be/xxxxx
%(title)s 代表影片標題,%(ext)s 代表副檔名,這樣下載的檔案就會自動以影片標題命名。
查看可下載的畫質清單
yt-dlp -F https://youtu.be/xxxxx
這個指令會列出所有可用的格式代碼,包含解析度、編碼方式、檔案大小等。看到想要的格式代碼後,用 -f 格式代碼 下載指定格式。
五、進階指令大全(4K、MP3、播放清單)
下載最高畫質 MP4
yt-dlp -f "bv*+ba/b" --merge-output-format mp4 https://youtu.be/xxxxx
這是阿正老師最常用的組合:bv* 代表最佳影像流、ba 代表最佳音訊流,--merge-output-format mp4 確保合併後輸出 MP4 格式,相容性最好。
只下載音訊(轉換成 MP3)
yt-dlp -x --audio-format mp3 --audio-quality 0 https://youtu.be/xxxxx
-x 表示只要音訊、--audio-format mp3 指定轉成 MP3、--audio-quality 0 代表最高品質(0 最高,9 最低)。如果你常常需要抽音訊、想搞懂 YouTube 音訊真實音質上限、或想搭配 Stacher 圖形介面比較,可以參考阿正老師另一篇 YouTube 轉 MP3 完整教學,那篇專門講合法範圍、音質真相和免費工具比較。
下載整個播放清單
yt-dlp -o "D:\影片\%(playlist_title)s\%(playlist_index)s - %(title)s.%(ext)s" https://www.youtube.com/playlist?list=播放清單ID
這個指令會依播放清單建立子資料夾,並在檔名前加上序號,讓影片排序整齊。
下載字幕
# 下載影片內嵌字幕(含自動生成) yt-dlp --write-subs --write-auto-subs --sub-lang zh-Hant,zh-Hans,en https://youtu.be/xxxxx # 僅下載字幕,不下載影片 yt-dlp --skip-download --write-subs --sub-lang zh-Hant https://youtu.be/xxxxx
限速下載(避免佔用全部頻寬)
yt-dlp -r 5M https://youtu.be/xxxxx
-r 5M 代表限速 5 MB/s,可以改成你想要的數值。
指定下載解析度(例如只要 1080p)
yt-dlp -f "bestvideo[height<=1080]+bestaudio/best[height<=1080]" --merge-output-format mp4 https://youtu.be/xxxxx
更新 yt-dlp 到最新版
yt-dlp -U
yt-dlp 更新頻繁,YouTube 偶爾改版會讓舊版失效,定期執行這個指令保持最新版是好習慣。
六、config.txt 設定檔:讓每次下載都省事
每次都要打一長串指令很累?可以把常用設定寫進 config.txt,之後只要輸入網址就好,yt-dlp 會自動套用這些設定。
在 Windows 上,config.txt 的預設位置是:
%APPDATA%\yt-dlp\config.txt
如果這個路徑不存在,自己建立即可。以下是阿正老師的常用設定範本(請注意:下面 #字號開頭、紅色的文字為註解,請勿輸入):
# 下載到指定資料夾,以頻道名稱/影片標題命名 -o D:\影片\%(uploader)s\%(title)s.%(ext)s # 預設下載最高畫質 MP4 -f bv*+ba/b --merge-output-format mp4 # 同時下載縮圖 --write-thumbnail # 跳過已下載過的影片 --download-archive D:\影片\downloaded.txt
--download-archive 這個功能超實用:它會記錄哪些影片已經下載過,下次再執行同一個播放清單,只會下載新增的影片,不會重複下載。
七、出現「Sign in to confirm you’re not a bot」或 403?驗證問題完整排解
這大概是 2026 年最多讀者留言問阿正老師的 yt-dlp 錯誤:明明指令打得好好的,卻突然跳出 Sign in to confirm you're not a bot,或是 HTTP Error 403。這是 YouTube 端的機器人偵測機制判定這次請求「太像自動化程式」,並不是你的電腦或 yt-dlp 壞掉了。以下依照阿正老師建議的優先順序排解:
第一步:先更新到最新版
YouTube 的偵測機制會不定期調整,yt-dlp 團隊通常會在幾天內跟進修正。先執行一次更新,很多時候問題就直接消失了:
yt-dlp -U
第二步:借用瀏覽器的登入狀態(最常見的解法)
部分影片或帳號會需要「已登入」的身分才能通過驗證。你可以先在瀏覽器登入 YouTube,讓 yt-dlp 直接借用該瀏覽器目前的登入 cookies:
yt-dlp --cookies-from-browser chrome https://youtu.be/xxxxx
把 chrome 換成你用的瀏覽器,目前官方支援 brave、chrome、chromium、edge、firefox 等主流瀏覽器。要注意兩件事:一是部分瀏覽器(例如 Chrome)在開啟中可能會鎖住 cookies 檔案,導致讀取失敗,先關掉瀏覽器再執行指令通常能解決;二是千萬不要在同一個瀏覽器設定檔裡登出 YouTube,登出會讓伺服器端連同這組工作階段一起失效,之前借用的登入狀態也會跟著失效。
⚠️ 使用
--cookies-from-browser 等於讓 yt-dlp 用「你自己的登入身分」發出請求,建議只在自己的電腦上操作,不要把匯出的 cookies 檔案分享給別人或上傳到公開的地方,以免帳號被盜用。
第三步:放慢下載速度
短時間內大量請求(例如批次下載整串播放清單)容易被判定為機器人行為,可以加上延遲參數降低被擋的機率:
yt-dlp --sleep-requests 2 --sleep-interval 5 --max-sleep-interval 15 https://youtu.be/xxxxx
更進階的做法:PO Token
如果上面幾招都試過還是卡關,官方文件裡還有 PO Token(Proof of Origin Token)驗證機制可以搭配外掛套件使用,但設定門檻比 cookies 高出不少,比較適合有經驗的使用者。這部分語法與運作方式會隨 YouTube 端的驗證機制持續調整,實際指令請以你當下安裝的 yt-dlp 版本官方 Wiki/README 為準,這裡先不深入展開,避免指令過時誤導讀者。
阿正老師點評:以阿正老師自己的經驗,九成以上的驗證問題,「先更新到最新版」加上「借用瀏覽器 cookies」這兩招就能解決。如果你是架在伺服器上長期批次下載,才需要認真考慮 PO Token 或降低請求頻率這類進階手法。
八、下載完之後:檔案異常怎麼辦?
除了下載過程會卡關,不少讀者是下載「完成」之後才發現問題。這裡整理幾個最常被問到的狀況:
❓ 檔案沒有聲音
通常是只下載到影像流、沒有合併音訊,最常見的原因是電腦上找不到 ffmpeg。回到「Windows 安裝 yt-dlp」章節確認 ffmpeg.exe 是否和 yt-dlp.exe 放在同一個資料夾,或已加入 PATH。
❓ 畫面很糊、明明選了高畫質卻不是
先用 yt-dlp -F 影片網址 確認該支影片實際可用的最高解析度——並不是每支影片都有 4K 來源,YouTube 的畫質選項會依上傳者提供的原始檔而不同。也要確認下載指令有沒有寫成 bv*+ba/b 這種會抓「最佳」影音流的格式,而不是不小心限制在低解析度。
❓ 檔名變成亂碼
如果影片標題含有特殊符號或非英文字元,在少數命令提示字元環境下可能顯示異常。可以在 -o 輸出樣板裡改用比較單純的命名規則,例如把 %(title)s 換成 %(id)s(用影片 ID 命名),檔案本身不受影響,只是檔名會變成一串英數字,之後再自行重新命名即可。
❓ 下載的檔案手機能不能直接播?
用 --merge-output-format mp4 合併輸出的 MP4,相容性最好,一般手機的相簿或播放器都吃得下。如果是用 -x 抽出的音訊檔(Opus 或 M4A 格式),M4A 幾乎所有裝置都能播,Opus 格式部分較舊的手機內建播放器可能不支援,這種情況可以在指令加上 --audio-format m4a 指定轉成相容性較好的格式。
九、其他常見問題與錯誤排解
❓ 出現「ffmpeg not found」
確認 ffmpeg.exe 和 yt-dlp.exe 在同一個資料夾,或已加入 PATH 環境變數。
❓ 下載速度很慢
可以嘗試加上 --concurrent-fragments 5 參數,讓 yt-dlp 同時分段下載,實際能提升多少會因網路環境與影片來源不同,建議自己測試比較有沒有感。
❓ 指令格式突然失效
YouTube 會定期更新,老版本的 yt-dlp 可能無法正常運作。先執行 yt-dlp -U 更新到最新版再試,這也是本文「驗證問題排解」章節建議的第一步。
阿正老師點評:yt-dlp 學習曲線比 GUI 工具稍高,但一旦上手,它的彈性是任何圖形介面工具都比不上的。以阿正老師的使用習慣,下載播放清單、批次轉 MP3、過濾已下載的影片,這些都是 GUI 工具做不到(或很麻煩)的事。建議先從最簡單的一行指令開始,熟了再加上 config.txt,慢慢累積出最適合自己的工作流程。
學會 yt-dlp,再也不怕網頁工具失效
yt-dlp 看起來像工程師的工具,但只要掌握幾個基本指令,一般人完全用得上。它完全免費、更新勤快、支援的網站多到難以想像,是阿正老師電腦裡少數「幾年沒有換過」的工具之一。
如果你覺得指令還是太麻煩,別忘了看看站上的 Stacher7 圖形介面教學,點幾下就能享受 yt-dlp 的強大功能;只想抽 MP3 音樂的話,也可以參考 YouTube 轉 MP3 完整教學。
歡迎在下面留言跟阿正老師分享你的使用心得!









