一、这是什么?
yt-dlp 是基于 Python 的开源命令行音视频下载工具,是已经停更的 youtube-dl 的活跃分支(fork)。
简单来说:你在 B 站、YouTube、Twitter、TikTok、抖音等任何视频网站看到一个视频,想下载到本地永久保存——yt-dlp 复制粘贴链接就能下。
📊 关键数据
| GitHub Stars | 120K+(同类工具天花板) |
| 支持网站 | 1800+(youtube-dl 约 1000+) |
| 最新稳定版 | 2026.06.09 |
| 开源协议 | Unlicense / 公共领域 |
| 编程语言 | Python 3.8+ |
| 仓库地址 | github.com/yt-dlp/yt-dlp |
二、它解决什么痛点?
日常下载视频有这几个老问题:
- 网页右键另存为只能下到 m3u8/分片,合并不了
- 需要特定分辨率或仅音频,网页端不提供选择
- 批量下载播放列表,网页一个一个点太慢
- 下载被中断要从头开始,网络环境差的情况
- 广告平台加水印,需要原始清晰度
- 想看视频但不想登录网站,要个本地播放器就能看
yt-dlp 一次解决:
- 一行命令下载任意视频——支持 1800+ 网站
- 完整格式选择——从 144P 到 8K,从纯音频到 HDR
- 播放列表批量——一次下一个专辑/频道/合集
- 断点续传——中断后再跑自动接上
- 原始质量——不经过网站转码,画质无损
- 离线观看——下完本机随便看,不依赖网站
三、核心功能模块
1. 格式与质量选择
| 维度 | 能力 |
|---|---|
| 分辨率 | 144P → 8K,全档位覆盖 |
| 视频编码 | H.264、H.265/HEVC、AV1、VP9 |
| 音频编码 | AAC、Opus、MP3、WAV、FLAC |
| HDR | HDR10、HDR10+、Dolby Vision |
| 帧率 | 24/30/48/60 fps 自由选择 |
| AI 增强 | YouTube 超分辨率格式自动检测 |
2. 字幕与元数据
- 多语言字幕下载——
--sub-langs all一键全下 - 自动翻译字幕——YouTube 自动字幕全语言提取
- 元数据嵌入——标题、作者、日期、描述写入文件
- SponsorBlock——自动跳过广告/赞助片段
3. 批量与自动化
| 功能 | 说明 |
|---|---|
| 播放列表下载 | 一次下完整 B 站合集/YouTube 频道 |
| 范围下载 | --playlist-items 1:5 只下前 5 集 |
| 断点续传 | 网络中断后自动接上 |
| 并发分片 | -N 8 并发下载 HLS/DASH 分片 |
| 定时任务 | 配合 cron 做定时下载 |
4. 高级能力
- Cookie 认证——绕过 YouTube 登录限制
- 代理支持——HTTP/SOCKS5
- 章节切割——按视频章节切成多个文件
- 直播录制——从开头录制直播流
- 限速下载——
--limit-rate 5M
四、技术架构
| 层级 | 技术栈 |
|---|---|
| 核心语言 | Python 3.8+ |
| 核心依赖 | ffmpeg(合并音视频、转码) |
| JS 运行时 | Deno v2.3+ / Node.js v22+ |
| 下载后端 | 原生 / curl / aria2c |
| 网络协议 | HTTP/HTTPS、HLS、DASH、RTMP、m3u8 |
| 更新机制 | --update 自更新 |
架构亮点:Extractor 插件化——每个网站一个 extractor,新增网站只需加一个文件。外部 n/sig 求解器避免内置 JS 解释器失效。并发分片下载原生
-N 替代 aria2c。
五、怎么安装?
方式一:单文件二进制(推荐)
# macOS sudo curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_macos -o /usr/local/bin/yt-dlp && sudo chmod a+rx /usr/local/bin/yt-dlp # Linux sudo curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp -o /usr/local/bin/yt-dlp && sudo chmod a+rx /usr/local/bin/yt-dlp
方式二:pip
pip install -U yt-dlp
方式三:Homebrew
brew install yt-dlp brew install ffmpeg # 必备依赖
⚠️ 必备依赖
ffmpeg 是音视频合并和转码的必需品,不装会出现"下载的视频没声音"问题:
brew install ffmpeg # macOS sudo apt install ffmpeg # Linux choco install ffmpeg # Windows
六、5 分钟上手
- 基础下载(最佳质量)
yt-dlp -P ~/Downloads/yt-dlp "VIDEO_URL"
- YouTube 带 Cookie(避坑)
YouTube 现在会屏蔽未认证请求,必须带浏览器 Cookie:yt-dlp --cookies-from-browser chrome "VIDEO_URL"
- 只下音频(提取 MP3)
yt-dlp -x --audio-format mp3 "VIDEO_URL"
- 下载字幕
yt-dlp --write-subs --sub-langs zh-Hans,en "VIDEO_URL"
- 指定分辨率
# 720P yt-dlp -f "bestvideo[height<=720]+bestaudio/best[height<=720]" "VIDEO_URL" # 1080P yt-dlp -f "bestvideo[height<=1080]+bestaudio/best[height<=1080]" "VIDEO_URL" # 4K 优先 yt-dlp -f "bestvideo[height>=2160]+bestaudio/best" "VIDEO_URL"
- 下载播放列表
# 整张播放列表 yt-dlp -o "%(playlist)s/%(playlist_index)02d - %(title)s.%(ext)s" "PLAYLIST_URL" # 只下前 5 集 yt-dlp -I 1:5 "PLAYLIST_URL"
- 下载前查看可用格式
yt-dlp -F "VIDEO_URL"
七、进阶玩法
并发分片下载(速度翻倍)
yt-dlp -N 8 "VIDEO_URL"
智能格式选择
yt-dlp -S "res:1080,ext:mp4:m4a" "VIDEO_URL"
按章节切片
yt-dlp --split-chapters -o "chapter:%(title)s/%(section_title)s.%(ext)s" "VIDEO_URL"
自动跳过广告(SponsorBlock)
yt-dlp --sponsorblock-remove sponsor "VIDEO_URL" yt-dlp --sponsorblock-remove all "VIDEO_URL" # 移除所有非必要片段
录制直播
yt-dlp --live-from-start "LIVE_STREAM_URL"
限速下载
yt-dlp --limit-rate 5M "VIDEO_URL"
八、谁在用?
图形界面包装(给非程序员用)
| 工具 | 平台 | 特点 |
|---|---|---|
| yt-dlg | Windows/Linux | Qt 界面,最流行 |
| Vividl | Windows | 现代化 Win10/11 风格 |
| Tartube | Linux/macOS | Python + GTK,功能强大 |
| Stacher | macOS | 原生 macOS 体验 |
| Seal | Android | 移动端首选 |
九、横向对比
| 维度 | yt-dlp | youtube-dl | 4K Video Downloader | IDM |
|---|---|---|---|---|
| 价格 | 免费 | 免费 | $15/月 | $25 一次性 |
| 开源 | ✅ Unlicense | ✅ Public Domain | ❌ | ❌ |
| 支持网站 | 1800+ | 1000+ | 50+ | 主流 |
| 更新频率 | 每日构建 | 几乎停更 | 偶尔 | 偶尔 |
| 并发下载 | ✅ 原生 -N | ❌ | ❌ | ✅ |
| SponsorBlock | ✅ | ❌ | ❌ | ❌ |
结论:命令行用户首选 yt-dlp,没有之一;普通用户选 Stacher(macOS)/ yt-dlg(Windows)。
十、近期更新
| 时间 | 版本 | 重要变更 |
|---|---|---|
| 2026-06-09 | 2026.06.09 | CVE 安全修复 ×3、Deno 最低 v2.3.0 |
| 2026-02-21 | 2026.02.21 | YouTube 修复、tiktok/facebook 提取器优化 |
| 2025-12-08 | 2025.12.08 | YouTube AI 超分辨率检测、自动字幕提取 |
| 2025-11-12 | 2025.11.12 | 外部 n/sig 求解器、Firefox v17 cookies |
节奏:几乎是周级更新,安全性问题响应极快。
十一、避坑指南
| 问题 | 解决 |
|---|---|
| YouTube 报 403 | --cookies-from-browser chrome |
| 下载到一半断开 | 重新跑同一命令,不删 .part 文件 |
| Unable to extract n/sig | 安装 Deno 或 Node.js v22+ |
| 视频没声音/画面 | 安装 ffmpeg |
| Sign in to confirm bot | 必须带 Cookie 认证 |
| 文件名乱码 | --restrict-filenames |
十二、安全提醒
新版修复了 3 个重要 CVE,建议立即升级:
yt-dlp --update
# 或
pip install -U yt-dlp
十三、配置文件
把常用选项放到 ~/.config/yt-dlp/config:
# ~/.config/yt-dlp/config --no-mtime --write-subs --sub-langs zh-Hans,en --embed-metadata --embed-thumbnail --cookies-from-browser chrome -P ~/Downloads/yt-dlp -o "%(uploader)s/%(upload_date>%Y-%m-%d)s - %(title)s.%(ext)s"
配置后直接 yt-dlp "URL" 即可。
十四、与 youtube-dl 的关系
| 维度 | yt-dlp | youtube-dl |
|---|---|---|
| 维护状态 | 极其活跃(每日构建) | 几乎停滞 |
| 下载速度 | 更快(原生 -N 并发) | 单线程 |
| 功能集 | 远超 | 基础 |
| SponsorBlock | ✅ | ❌ |
| AI 格式检测 | ✅ | ❌ |
十五、总结
yt-dlp 的核心价值:
- 不是替代浏览器下载,而是替代一整套商业下载软件——1800+ 网站支持
- 不是技术宅专属,而是内容创作者的瑞士军刀——日常 3 个命令就够
- 不是黑科技,而是合规开源——Unlicense 协议,可商用可改造
- 不是装完就完,而是持续进化——每日构建永远在跟平台反爬升级
如果你经常需要保存视频到本地(学习资料、创作素材、备份存档),yt-dlp 是 2026 年唯一正确的选择,没有之一。