yt-dlp:功能丰富的开源命令行音视频下载器 #
yt-dlp 是什么? #
yt-dlp 是一款功能丰富的命令行音视频下载器(command-line audio/video downloader),支持从数千个网站下载视频与音频。它是经典工具 youtube-dl 的分支项目,基于已停止维护的 youtube-dlc 发展而来,由社区持续活跃维护。
与图形化下载工具相比,yt-dlp 的核心价值在于「可控」与「可脚本化」:用户可以通过命令行参数精确指定视频格式、清晰度、音轨、字幕、封面图和元数据,还能借助配置文件把常用参数固化下来,实现一键批量下载。它完全免费、开源,不依赖任何商业服务,尤其适合需要处理大量链接、追求高画质或者希望把下载流程嵌入自动化脚本的用户。无论是普通用户保存课程视频,还是开发者做媒体归档,yt-dlp 都是被广泛信任的选择。
yt-dlp 有哪些亮点特色? #
- 支持数千个站点:官方说明 yt-dlp 支持数千个网站,覆盖主流视频平台、直播站点、社交媒体与部分需要登录的内容源,一个工具即可应对绝大多数下载场景。
- 功能极其丰富:除基础下载外,还原生支持视频格式筛选与排序、字幕下载、缩略图嵌入、元数据修改、分P播放列表处理、断点续传等高级能力。
- SponsorBlock 集成:内置 SponsorBlock 选项,可在下载或后期处理时自动标记/移除视频中的赞助片段、片头片尾等非内容部分,省去手动剪辑的麻烦。
- 活跃维护、迭代迅速:GitHub 仓库拥有约 19.6 万 Star、1.7 万 Fork 和超过 24,000 次提交,社区响应及时,站点规则更新频率远高于同类老旧项目。
- 真正的跨平台:官方为 Windows、macOS 和 Linux 提供预编译二进制文件,同时支持通过 pip 与第三方包管理器安装,Windows ARM64、Linux aarch64 等架构也有对应版本。
- 开源免费无限制:项目采用 Unlicense 许可协议,完全免费、无广告、无功能阉割,也不限制下载数量或文件时长,可放心用于个人与商业环境。
- 可扩展、可嵌入:支持安装插件扩展解析能力,也可以作为 Python 库嵌入到自己的程序中,方便开发者构建二次应用。
- 配置文件与预设别名:支持读取配置文件、使用预设别名(Preset Aliases),可以把复杂的参数组合简化成一条短命令,显著提升批量操作效率。

免费下载 yt-dlp #
以下为官方提供的各平台安装包,点击链接即可下载。
| 文件名 | 描述 | 大小 | 下载 |
|---|---|---|---|
| yt-dlp.exe | Windows 64 位独立可执行文件 | 17.0 MB | 夸克网盘 |
| yt-dlp_arm64.exe | Windows ARM64 独立可执行文件 | 20.2 MB | 夸克网盘 |
| yt-dlp_macos | macOS 独立可执行文件 | 35.4 MB | 夸克网盘 |
| yt-dlp_win_arm64.zip | Windows ARM64 压缩包 | 20.5 MB | 夸克网盘 |
| yt-dlp_win_x86.zip | Windows x86(32 位)压缩包 | 12.7 MB | 夸克网盘 |
提示:官方同时提供通过
pip与第三方包管理器(如 winget、brew、scoop 等)安装的方式,详见下文「如何安装」。
yt-dlp 如何使用? #
yt-dlp 没有图形界面,全部操作通过命令行完成。掌握下面几步,就能覆盖绝大多数日常需求。
- 准备运行环境:下载对应平台的二进制文件后,建议把它放到一个固定目录(例如 Windows 的
C:\yt-dlp\),并将该目录加入系统PATH,这样在任何终端位置都能直接调用yt-dlp。 - 打开终端:Windows 使用 PowerShell 或 CMD,macOS/Linux 打开「终端」,输入
yt-dlp --version,若能输出版本号即表示安装成功。 - 下载第一个视频:执行
yt-dlp "视频页面地址",程序会自动选择最佳画质并保存到当前目录。地址两侧建议加英文引号,避免特殊字符被终端解析。 - 常用参数微调:
-f "bv*+ba/b":合并最佳视频流与音频流,获得最高画质;-x --audio-format mp3:仅提取音频并转换为 MP3;-o "%(title)s.%(ext)s":自定义输出文件命名规则;--write-subs --sub-langs zh-Hans,en:同时下载指定语言字幕;-P "D:/Videos":指定下载保存目录。
- 批量与自动化:把网址逐行写入
urls.txt,执行yt-dlp -a urls.txt即可批量下载;也可以把常用参数写进配置文件,或使用--alias预设别名,避免每次重复输入长串命令。
进阶提示:yt-dlp 支持读取配置文件、netrc 认证和大量输出模板变量,需要登录或处理复杂命名规则时,可查阅官方 README 的「CONFIGURATION」与「OUTPUT TEMPLATE」章节。
yt-dlp 的常见问题? #
yt-dlp 和 youtube-dl 有什么区别? yt-dlp 是 youtube-dl 的分支项目(基于已停止维护的 youtube-dlc),在保留原有命令行语法的同时新增了大量功能,并对网站解析规则保持高频更新。因此在新站点适配上通常更快、更可靠。
yt-dlp 是免费的吗? 是的。项目采用 Unlicense 协议开源发布,完全免费,没有广告、会员或下载数量限制,也不存在付费解锁功能的设计。
使用 yt-dlp 必须安装 Python 吗?
不是必须的。官方提供了 Windows、macOS、Linux 的预编译二进制文件,下载后即可直接运行,无需额外安装 Python。只有通过 pip 安装或开发插件时才需要 Python 环境。
提示“无法提取”或站点不受支持怎么办?
首先确认使用的是最新版本,yt-dlp -U 可以快速升级;多数解析失败问题都由版本过旧引起。若升级后仍然失败,可在 GitHub Issues 中搜索该站点,通常已有对应讨论或临时解决方案。
下载速度慢或频繁中断怎么办?
可以尝试添加 -N 4 启用多线程分片下载,或使用 --limit-rate 调整限速策略。若目标站点本身有区域限制,可配合 --proxy 指定代理,命令行为 --proxy socks5://127.0.0.1:1080。
可以下载会员视频或需要登录的内容吗?
可以,但需要使用 --cookies-from-browser chrome 或 --cookies cookies.txt 传入浏览器 Cookie,让程序以已登录身份访问。请注意遵守目标网站的服务条款与当地法律法规,仅下载自己有权获取的内容。
yt-dlp 如何安装? #
yt-dlp 提供二进制文件、pip 和第三方包管理器三种安装途径,可按平台选择。
Windows #
- 二进制方式(推荐新手):下载
yt-dlp.exe(64 位)或对应架构的压缩包,放到固定目录,例如C:\yt-dlp\。 - 加入 PATH:在「系统属性 → 环境变量」中把
C:\yt-dlp追加到Path变量,重新打开终端后执行yt-dlp --version验证。 - 包管理器方式:如已安装 winget,可执行
winget install yt-dlp;使用 scoop 的用户执行scoop install yt-dlp。 - pip 方式:已安装 Python 3.9 及以上版本时,执行
python -m pip install -U yt-dlp。
macOS #
- Homebrew(推荐):执行
brew install yt-dlp,后续用brew upgrade yt-dlp升级。 - 二进制方式:下载
yt-dlp_macos,将其重命名为yt-dlp,移动到/usr/local/bin/并执行chmod +x /usr/local/bin/yt-dlp赋予可执行权限。 - pip 方式:执行
python3 -m pip install -U yt-dlp。
Linux #
- pip 方式:执行
python3 -m pip install -U yt-dlp,建议在虚拟环境或使用--user参数安装。 - 二进制方式:下载对应架构的可执行文件,
chmod +x后移动到/usr/local/bin/。 - 发行版仓库:部分发行版仓库版本较旧,若遇到解析异常,建议改用 pip 或官方二进制以获得最新版本。
升级提示:二进制用户可以执行
yt-dlp -U自更新;通过包管理器安装的,请使用对应包管理器的升级命令。
yt-dlp 如何卸载? #
Windows #
- 删除程序文件:直接删除
yt-dlp.exe及其所在目录即可,程序本身不写注册表。 - 包管理器卸载:通过 winget 安装的执行
winget uninstall yt-dlp,通过 scoop 安装的执行scoop uninstall yt-dlp。 - pip 卸载:执行
python -m pip uninstall yt-dlp。 - 清理残留:删除配置文件目录
%APPDATA%\yt-dlp\;若曾把安装目录加入 PATH,记得从环境变量中移除。
macOS #
- Homebrew 卸载:执行
brew uninstall yt-dlp。 - 手动安装的卸载:删除
/usr/local/bin/yt-dlp文件。 - pip 卸载:执行
python3 -m pip uninstall yt-dlp。 - 清理残留:删除配置与缓存目录
~/.config/yt-dlp/与~/Library/Caches/yt-dlp/。
Linux #
- pip 卸载:执行
python3 -m pip uninstall yt-dlp。 - 二进制卸载:删除
/usr/local/bin/yt-dlp。 - 发行版仓库卸载:使用对应的包管理器命令,例如
sudo apt remove yt-dlp。 - 清理残留:删除
~/.config/yt-dlp/目录,其中可能保存着自定义配置、别名和缓存信息。
