Youtube视频下载器
使用说明
本工具使用Youtube油管专用解析器 yt-dlp 解析视频。以下为常用选项说明。
格式与下载
-f <格式>/--format:指定格式。例:best、bestvideo+bestaudio、bv*+ba、bestvideo[height<=720]+bestaudio、worst、mp4、22(格式 ID)。--format-sort <排序>:格式选择时的排序,如res,fps、vcodec:av1。-S <排序>/--format-sort:同上(简写)。--merge-output-format <格式>:合并音视频时的容器,如mp4、mkv、webm(需 ffmpeg)。--recode-video <格式>:下载后转码,如mp4、mkv。-r <速率>/--limit-rate:限速,如50K、2.5M。--concurrent-fragments <N>:并发下载分片数(HLS/DASH)。
输出与文件名
-o <模板>/--output:输出路径/文件名模板。常用占位符:%(title)s、%(id)s、%(ext)s、%(uploader)s、%(upload_date)s、%(duration)s、%(height)p。例:%(title)s.%(ext)s、~/Videos/%(uploader)s/%(title)s.%(ext)s。--output-na-placeholder <字符串>:当某字段缺失时的占位符,默认NA。-a <文件>/--batch-file:从文件读取 URL 列表(每行一个)。--paths <路径:路径...>:按类型指定输出目录,如home:~/Videos,subtitle:~/Subs。
播放列表与选择
--no-playlist:仅下载链接中的单条视频,不下载整份播放列表。-I <索引>/--playlist-items:指定播放列表项,如1-3,7、1,2,-1(-1 表示最后一项)。--playlist-start <序号>:播放列表起始位置(从 1 开始)。--playlist-end <序号>:播放列表结束位置。--playlist-reverse:倒序下载播放列表。--no-playlist-reverse:顺序下载(默认)。--flat-playlist:仅列出播放列表条目,不解析每条视频。--lazy-playlist:不预加载完整播放列表,边下边取。
认证与代理
--cookies <文件>:从 Netscape 格式文件读取 Cookie(如浏览器导出的cookies.txt)。--cookies-from-browser <浏览器>:从浏览器读取 Cookie,如chrome、firefox、safari、edge。可加:profile指定配置,如chrome:Default。--username <用户>/-u:登录用户名。--password <密码>/-p:登录密码;-p -表示从标准输入读取。--twofactor <密码>:两步验证码。--netrc:从~/.netrc读取用户名与密码。--proxy <URL>:代理地址,支持 HTTP/HTTPS/SOCKS,如http://127.0.0.1:7890、socks5://127.0.0.1:1080。
后处理(需 ffmpeg)
-x/--extract-audio:仅提取音频,不保留视频。--audio-format <格式>:提取音频时的格式,如mp3、m4a、aac、flac、opus、vorbis。--audio-quality <质量>:音频质量,如0(最好)~9(最差),或 VBR 如128K。--embed-thumbnail:将封面嵌入音频文件(如 mp3/m4a)。--embed-metadata:将元数据写入文件(默认)。--embed-subs:将字幕嵌入视频(仅部分容器支持)。--embed-chapters:嵌入章节信息。--convert-subs <格式>:将字幕转为指定格式,如srt、ass、vtt。--postprocessor-args <参数>:传给 ffmpeg 的额外参数,如-acodec copy。
字幕
--write-subs/--write-sub:下载字幕。--write-auto-subs:下载自动生成字幕。--no-write-subs:不下载字幕(默认)。--sub-langs <语言>:字幕语言,如en,zh-Hans、all。用--list-subs查看可用语言。--write-subs与--skip-download一起用时只下字幕。
元信息与列表
-j/--dump-json:仅输出单条视频的 JSON 元信息,不下载。-J/--dump-single-json:输出单条视频的 JSON(含格式列表等)。--print <键>:只打印指定字段,如--print title、--print "%(title)s - %(id)s"。-F/--list-formats:列出当前视频可用格式,不下载。--list-subs:列出可用字幕语言。--list-thumbnails:列出可用缩略图。--skip-download:不下载媒体,仅获取元数据/列表(常与-j、--write-subs等配合)。
日期与筛选
--datebefore <日期>:仅下载该日期之前的视频,如20231201。--dateafter <日期>:仅下载该日期之后的视频。--match-filter <表达式>:按条件过滤,如duration < 600、like_count > 100。--min-views <数量>:最少观看数。--max-views <数量>:最多观看数。
下载控制与重试
-R <次数>/--retries:重试次数,默认 10。--fragment-retries <次数>:分片重试次数,默认 10。--skip-unavailable-fragments:跳过无法获取的分片(HLS/DASH)。--abort-on-error:遇错误即中止(对播放列表默认跳过错误项)。--ignore-errors:忽略错误,继续下载列表其余项。--no-abort-on-error:遇错误不中止(播放列表时继续)。--sleep-requests <秒>:每次请求间隔,减轻目标站压力。--sleep-interval <秒>:每次下载间隔。
其他常用
-q/--quiet:安静模式,少输出。-v/--verbose:详细输出。--no-warnings:不输出警告。--no-check-certificate:不校验 HTTPS 证书。--prefer-free-formats:在质量相近时优先选非付费格式。--no-overwrites:不覆盖已存在文件。--restrict-filenames:将文件名限制为 ASCII,避免乱码。-k/--keep-video:提取音频后保留原视频。--extractor-args <站点:参数>:传给提取器的参数,如youtube:player_client=android。--config-location <路径>:使用指定配置文件;-表示从标准输入读配置。
更多
更多选项与占位符见 yt-dlp --help 与 官方文档。