yt-dlp:功能强大的命令行音视频下载神器
如果经常需要从 YouTube、Bilibili、Twitter、Instagram 等平台下载视频或音频,那么一定不能错过 yt-dlp ,它是开源、跨平台、功能极其丰富的命令行音视频下载工具。
本文将带你全面了解 yt-dlp 的优势、安装方法,并通过多个实用示例快速上手!
什么是 yt-dlp
yt-dlp 是 youtube-dl 的活跃分支(fork),在保留原项目强大功能的基础上,进行了大量优化和扩展:
- ✅ 支持 超过 1500 个网站(包括 YouTube、Bilibili、TikTok、Reddit、Coursera 等)
- ✅ 更快的更新频率和更强的反爬能力
- ✅ 支持 SponsorBlock(跳过片头/广告/赞助片段)
- ✅ 更智能的格式选择与合并(支持 4K、HDR、多音轨等)
- ✅ 内置字幕、封面、元数据嵌入
- ✅ 跨平台:Windows / macOS / Linux 均可运行
安装 yt-dlp
yt-dlp 支持多种安装方式,可以根据自己的系统和偏好选择适合的方法。
使用 Homebrew
如果在 macOS 上使用 Homebrew,只需一条命令即可安装:
brew install yt-dlp
# 升级命令
brew upgrade yt-dlp
Homebrew 安装的版本通常保持最新,且自动处理依赖(如 FFmpeg 可单独安装:
brew install ffmpeg)。使用 pip
确保已安装 Python 3.10+,然后执行:
pip install yt-dlp
# 升级命令
pip install -U yt-dlp
直接下载二进制文件
适用于不想安装 Python 的用户:
- Windows:下载 yt-dlp.exe
- macOS:下载 yt-dlp_macos
- Linux:下载 yt-dlp
以 macOS 为例:
# 下载
curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_macos -o yt-dlp
# 赋予执行权限
chmod +x yt-dlp
# 移动到 PATH(可选)
sudo mv yt-dlp /opt/homebrew/bin/
基础使用示例
下载单个视频
直接在命令行输入命令 + 视频链接即可:
yt-dlp "https://www.youtube.com/watch?v=xxxxxx"
同时也可以通过ID下载对应视频+视频,对应格式的视频的ID可以通过下面列出所有可用格式的命令获取
yt-dlp -f 137+140 "链接"
- 视频用格式 137(1080p)
- 音频用格式 140(高质量 AAC)
仅下载音频
# 下载并转为 MP3 格式
yt-dlp -x --audio-format mp3 "视频链接"
-x表示提取音频,需 FFmpeg 支持。
列出所有可用格式
yt-dlp -F "视频链接"
通过输出的表格中的 RESOLUTION 来确定要下载的音频 audio 或对应大小的视频选择适合的格式编号。
手动指定格式
可以通过 -f 参数指定下载的格式,支持多种组合方式:
# 仅 144p
yt-dlp -f "bestvideo[height=144]+bestaudio/best[height=144]" "链接"
# 仅 240p
yt-dlp -f "bestvideo[height=240]+bestaudio/best[height=240]" "链接"
# 仅 360p
yt-dlp -f "bestvideo[height=360]+bestaudio/best[height=360]" "链接"
# 仅 480p
yt-dlp -f "bestvideo[height=480]+bestaudio/best[height=480]" "链接"
# 仅 720p
yt-dlp -f "bestvideo[height=720]+bestaudio/best[height=720]" "链接"
# 例如 1080p + 最佳音频
yt-dlp -f "bestvideo[height<=1080]+bestaudio/best[height<=1080]" "视频链接"
# 最高 4K(但不超过 2160p)
yt-dlp -f "bestvideo[height<=2160]+bestaudio/best[height<=2160]" "链接"
下载整个播放列表
如果需要下载 YouTube 上的整个播放列表,可以直接使用播放列表链接:
yt-dlp -i "播放列表链接"
-i表示忽略错误,继续下载下一个视频。
更多用法
自动跳过 YouTube 的赞助/片头片段
yt-dlp --sponsorblock-remove all "视频链接"
支持类别:sponsor, intro, outro, selfpromo, preview 等。
嵌入封面图到音频文件(MP3/M4A)
yt-dlp -x --embed-thumbnail --audio-format mp3 "视频链接"
下载字幕(中英双语)
yt-dlp --write-subs --sub-langs en,zh "视频链接"
自定义输出文件名
yt-dlp -o "%(uploader)s - %(title)s.%(ext)s" "视频链接"
常用字段:%(title)s, %(id)s, %(upload_date)s, %(duration)s 等。
使用配置文件(避免重复输入参数)
创建 ~/.config/yt-dlp/config 文件,内容如下:
--format bestvideo[height<=1080]+bestaudio/best
--output "~/Videos/%(uploader)s/%(title)s.%(ext)s"
--embed-thumbnail
--embed-metadata
--write-subs
--sub-langs zh,en
之后每次运行 yt-dlp 都会自动应用这些设置!
注意事项
- 请遵守各平台的 服务条款 和 版权法规,仅用于个人学习或合法用途。
- 某些网站(如 YouTube)可能需要登录 Cookie 才能下载高清内容:
yt-dlp --cookies-from-browser chrome "视频链接" - 若遇到“格式不可用”,可尝试更新 yt-dlp:
yt-dlp -U
yt-dlp 凭借其强大的功能、活跃的社区和持续的更新,已成为目前最优秀的命令行视频下载工具之一。无论你是普通用户想保存喜欢的视频,还是开发者需要批量处理媒体资源,它都能满足你的需求。
GitHub 地址:https://github.com/yt-dlp/yt-dlp
官方 Wiki(含 FAQ):https://github.com/yt-dlp/yt-dlp/wiki