用途
yt-dlp 是一个功能丰富的命令行音视频下载工具,支持数千个网站,是 youtube-dl 的分支,具有增强功能和活跃维护。本技能用于在以下场景提供专家级协助:从 YouTube、Vimeo 等数千个站点下载视频或音频;以多种格式(MP3、M4A、OPUS 等)提取音频;下载整个播放列表或频道;选择特定画质或格式组合;嵌入元数据、字幕或缩略图;用脚本自动化媒体下载;录制直播;借助 FFmpeg 集成转换视频格式;仅提取视频信息而不下载;排查下载问题或理解 yt-dlp 选项;为批量处理设置高级配置。
主要能力
yt-dlp 支持数千个站点(YouTube、Vimeo、Twitter、Facebook、Instagram、TikTok 等),维护活跃,功能丰富,提供大量格式选择、元数据处理和后处理选项,下载快速高效,支持多线程下载与断点续传,并可通过插件系统扩展自定义提取器和后处理器。相比 youtube-dl,它在性能与稳定性、格式选项与画质选择、元数据处理、播放列表与频道下载、错误处理与重试逻辑方面有所改进,并集成 SponsorBlock。
安装
推荐方式:
Windows:可从 https://github.com/yt-dlp/yt-dlp/releases/latest 下载独立可执行文件 yt-dlp.exe(64 位),或使用 winget install yt-dlp,或 scoop install yt-dlp。
macOS:使用 brew install yt-dlp,或直接下载:curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_macos -o /usr/local/bin/yt-dlp 然后 chmod a+rx /usr/local/bin/yt-dlp。
Linux:推荐使用 pip:python3 -m pip install -U yt-dlp;或下载二进制: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;Debian/Ubuntu 可通过 apt:sudo add-apt-repository ppa:tomtomtom/yt-dlp、sudo apt update、sudo apt install yt-dlp。
跨平台 pip:python3 -m pip install -U yt-dlp,或使用 pipx install yt-dlp。
必要依赖:FFmpeg(强烈推荐),用于合并视频+音频格式和后处理。安装方式:Windows(scoop)scoop install ffmpeg;macOS brew install ffmpeg;Ubuntu/Debian sudo apt install ffmpeg;Fedora sudo dnf install ffmpeg。
可选依赖:pip install brotli certifi mutagen pycryptodomex websockets;浏览器 cookie 支持:Linux pip install secretstorage,Windows pip install pywin32;HTTP/3 与模拟:pip install curl-cffi。
使用方式
基本下载:yt-dlp "URL";多个 URL:yt-dlp URL1 URL2 URL3;从文件读取 URL:yt-dlp -a urls.txt;下载整个播放列表:yt-dlp "https://www.youtube.com/playlist?list=PLAYLIST_ID";下载频道:yt-dlp "https://www.youtube.com/@channelname"。
仅音频:yt-dlp -x --audio-format mp3 URL;最佳音质:yt-dlp -x --audio-quality 0 URL;带元数据:yt-dlp -x --audio-format mp3 --embed-metadata --embed-thumbnail URL;最佳音质音乐:yt-dlp -f 'bestaudio[ext=m4a]' --embed-thumbnail --add-metadata URL。
格式选择:列出所有格式 yt-dlp -F URL;最佳画质 yt-dlp -f "best" URL;最佳视频+音频分别下载后合并 yt-dlp -f "bestvideo+bestaudio" URL;按 ID 下载 yt-dlp -f 22 URL;最高 1080p yt-dlp -f "bestvideo[height<=1080]+bestaudio/best[height<=1080]" URL;最佳 MP4 yt-dlp -f "bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]/best" URL。高级:限制大小 yt-dlp -f "best[filesize<100M]" URL;指定分辨率 yt-dlp -f "bestvideo[height=720]+bestaudio" URL;优先 60fps yt-dlp -f "bestvideo[fps>30]+bestaudio" URL;仅视频 yt-dlp -f "bestvideo" URL;仅音频 yt-dlp -f "bestaudio" URL;优先免费编解码器 yt-dlp -f "bestvideo[vcodec^=vp]+bestaudio[acodec^=opus]" URL。
常见用例:下载整个频道或播放列表(可配合输出模板、日期过滤);下载字幕(--write-subs、--write-auto-subs、--sub-lang、--embed-subs、--all-subs、--convert-subs srt);下载元数据与缩略图(--embed-metadata、--embed-thumbnail、--write-thumbnail、--convert-thumbnails jpg、--embed-chapters、--write-description、--write-info-json);录制直播(--live-from-start、--wait-for-video);下载播放列表特定条目(--playlist-end、--playlist-start、--playlist-items、"::5");归档与下载历史(--download-archive archive.txt、--continue、--no-overwrites、--no-continue)。
高级功能:输出模板(-o 配合 %(title)s、%(id)s、%(ext)s、%(uploader)s、%(upload_date)s、%(duration)s、%(resolution)s、%(playlist)s、%(playlist_index)s、%(channel)s、%(channel_id)s 等字段);后处理(--merge-output-format mp4、--recode-video mp4、-x --audio-format mp3 --audio-quality 0、--remux-video mkv、--embed-thumbnail、--embed-metadata --embed-chapters、--split-chapters、--exec);SponsorBlock 集成(--sponsorblock-mark all、--sponsorblock-remove all,类别包括 sponsor、intro、outro、selfpromo、preview、filler、interaction、music_offtopic);浏览器 cookie 支持(--cookies-from-browser firefox/chrome、--cookies cookies.txt);限速与网络选项(--limit-rate、--proxy、--user-agent、--referer、--socket-timeout、--retries、--sleep-interval);地理限制绕过(--proxy socks5://、--geo-bypass、--geo-bypass-country US)。
配置文件:可创建 ~/.config/yt-dlp/config(Linux/macOS)或 %APPDATA%/yt-dlp/config.txt(Windows),写入默认格式、输出模板、嵌入元数据、字幕、归档、重试等选项。
信息提取(不下载):--dump-json、--get-title、--get-url、--get-filename、--get-thumbnail、--get-duration、--dump-single-json、--simulate、-F。
批量处理与自动化:可编写 Bash 脚本(示例见资料)或使用 Python 集成(import yt_dlp,配置 ydl_opts,使用 YoutubeDL 下载或提取信息)。
常用选项参考:通用(--help、--version、--update、--ignore-errors、--no-abort-on-error、--quiet、--verbose、--dump-json、--simulate);下载(-f、-o、--playlist-items、--min-filesize、--max-filesize、--date、--datebefore、--dateafter);后处理(-x、--audio-format、--audio-quality、--recode-video、--remux-video、--embed-subs、--embed-thumbnail、--embed-metadata、--embed-chapters、--split-chapters、--sponsorblock-mark、--sponsorblock-remove);字幕(--write-subs、--write-auto-subs、--all-subs、--sub-lang、--sub-format、--convert-subs)。
适用场景
适用于需要从各类视频网站下载音视频、提取音频、批量下载频道或播放列表、录制直播、嵌入元数据与字幕、自动化媒体下载流程、仅获取视频信息、以及排查下载问题的用户。
限制
资料未提供关于收费、价格、平台限制、具体效果或使用步骤之外的额外限制信息。部分功能(如地理限制绕过、浏览器 cookie 支持)可能受站点政策或法律约束,资料未展开说明。