yt-dlp 命令速查表
注:
youtube-dl已停止维护,yt-dlp是社区维护的功能更全的分支,命令参数基本兼容并做了大量扩展,推荐直接使用yt-dlp。
安装
# pip 安装(推荐,方便升级)
pip install -U 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
# 升级
yt-dlp -U基础用法
# 最简单下载(默认选择最佳画质/音质合并)
yt-dlp "URL"
# 只看信息,不下载
yt-dlp --dump-json "URL"
yt-dlp -F "URL" # 列出所有可用格式(format code)格式选择 -f
yt-dlp -f best "URL" # 单文件最佳质量(可能画质有上限)
yt-dlp -f bestvideo+bestaudio "URL" # 最佳视频+最佳音频,自动合并(需要 ffmpeg)
yt-dlp -f "bv*+ba/b" "URL" # 常用写法,无最佳组合时回退到单文件最佳
yt-dlp -f 137+140 "URL" # 指定具体 format code(配合 -F 查看)
# 限制分辨率/编码
yt-dlp -f "bv*[height<=1080]+ba" "URL"
yt-dlp -f "bv*[vcodec^=avc]+ba" "URL" # 优先 h264 编码,兼容性更好
# 只要音频
yt-dlp -f bestaudio "URL"
yt-dlp -x --audio-format mp3 "URL" # 提取并转码为 mp3(需要 ffmpeg)
yt-dlp -x --audio-format mp3 --audio-quality 0 "URL" # 0 = 最佳质量输出与文件命名 -o
yt-dlp -o "%(title)s.%(ext)s" "URL"
yt-dlp -o "%(uploader)s/%(upload_date)s - %(title)s.%(ext)s" "URL"
# 常用字段:%(id)s %(title)s %(ext)s %(uploader)s %(upload_date)s
# %(duration)s %(resolution)s %(playlist_index)s播放列表 / 批量
yt-dlp "PLAYLIST_URL" # 下载整个播放列表
yt-dlp --playlist-items 1,3,5-10 "URL" # 只下载指定序号
yt-dlp --no-playlist "URL" # 单个链接属于播放列表时,只下载该视频
yt-dlp -a urls.txt # 从文本文件批量读取 URL(每行一个)字幕
yt-dlp --write-sub --sub-lang zh-Hans,en "URL" # 下载指定语言字幕(不下载视频加 --skip-download)
yt-dlp --write-auto-sub --sub-lang zh-Hans "URL" # 下载自动生成字幕
yt-dlp --embed-subs "URL" # 字幕嵌入视频文件
yt-dlp --list-subs "URL" # 查看可用字幕语言断点续传 / 限速 / 重试
yt-dlp -c "URL" # 断点续传(continue,默认开启)
yt-dlp -r 2M "URL" # 限速 2MB/s
yt-dlp --retries 10 "URL" # 失败重试次数
yt-dlp --concurrent-fragments 4 "URL" # 分片并发下载数(提速)Cookies / 登录内容
yt-dlp --cookies cookies.txt "URL" # 使用导出的 cookies 文件
yt-dlp --cookies-from-browser chrome "URL" # 直接读取浏览器 cookies(chrome/firefox/edge...)元数据 / 缩略图 / 附加信息
yt-dlp --embed-thumbnail "URL" # 嵌入封面图
yt-dlp --embed-metadata "URL" # 嵌入标题、作者等元数据
yt-dlp --write-thumbnail "URL" # 单独保存缩略图文件
yt-dlp --write-info-json "URL" # 保存完整元数据为 json
yt-dlp --write-description "URL" # 保存视频简介为 txt时间区间下载
# 只下载视频的某一段(需要 ffmpeg,精确剪辑)
yt-dlp --download-sections "*00:01:00-00:02:30" "URL"
# 下载多段
yt-dlp --download-sections "*00:00:00-00:01:00" --download-sections "*00:05:00-00:06:00" "URL"直播 / 特殊场景
yt-dlp --live-from-start "URL" # 从直播开始处录制(若支持)
yt-dlp --wait-for-video 30 "URL" # 等待预告直播开始代理与网络
yt-dlp --proxy "socks5://127.0.0.1:1080" "URL"
yt-dlp --socket-timeout 30 "URL"常用组合示例
# 下载 1080p 及以下 h264 编码 mp4,嵌入字幕和封面,按上传者归档
yt-dlp -f "bv*[height<=1080][vcodec^=avc]+ba" \
--merge-output-format mp4 \
--embed-subs --sub-lang zh-Hans,en \
--embed-thumbnail --embed-metadata \
-o "%(uploader)s/%(title)s.%(ext)s" \
"URL"
# 只提取音频为高质量 mp3,附带封面和元数据
yt-dlp -x --audio-format mp3 --audio-quality 0 \
--embed-thumbnail --add-metadata \
-o "%(title)s.%(ext)s" \
"URL"依赖提示
- 合并音视频、剪辑片段、嵌入字幕/封面等功能都依赖 ffmpeg,请确保已安装并在 PATH 中。
- 遇到解析失败时优先尝试
yt-dlp -U升级到最新版,很多站点改版后需要更新支持。