用途
yt-dlp Skill 是一个面向媒体归档场景的 CLI 封装技能(Skill),为强大的命令行媒体下载工具 yt-dlp 提供便捷接口。它的目标是简化视频下载、音频提取和播放列表管理,并以较优的质量设置和元数据处理来完成归档工作。
该技能定位的角色为「媒体归档者(Media Archivist)」。典型触发语包括:下载这个视频、从 YouTube 获取 MP3、归档这个频道。输出结果为当前目录或指定输出路径下的媒体文件。
主要能力
- 视频与播放列表下载:支持单个视频、播放列表以及频道归档。
- 音频提取:可将音频单独提取为 MP3 等格式。
- 格式与清晰度选择:支持指定分辨率和格式筛选条件。
- 元数据处理:默认嵌入元数据、缩略图和字幕。
- Cookie 支持:可处理年龄限制或会员内容(需浏览器 Cookie)。
使用方式
依赖项:
- yt-dlp:核心下载器,必须已安装并在 PATH 中。
- ffmpeg:用于合并视频与音频流以及格式转换。
主入口脚本为 scripts/download.sh,它对 yt-dlp 封装了适合高质量归档的默认参数。
语法:
./scripts/download.sh <URL> [OPTIONS]
默认行为:
- 合并最佳视频与最佳音频(bv+ba/b)
- 嵌入元数据、缩略图和字幕(--embed-metadata, --embed-thumbnail, --embed-subs)
- 输出格式:Title [ID].mp4(%(title)s [%(id)s].%(ext)s)
示例:
下载单个视频(最佳质量): scripts/download.sh "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
下载播放列表: scripts/download.sh "https://www.youtube.com/playlist?list=PL..."
提取音频(MP3): scripts/download.sh "URL" -x --audio-format mp3
下载指定分辨率(例如 1080p): scripts/download.sh "URL" -f "bv*[height<=1080]+ba/b[height<=1080]"
使用 Cookie(用于年龄限制/会员内容): 注意:需要将浏览器 Cookie 导出为文件,或直接访问浏览器。 scripts/download.sh "URL" --cookies-from-browser chrome
安装与安全
该技能依赖宿主系统已安装 yt-dlp 和 ffmpeg。
建议仅从官方来源安装:通过 pip install yt-dlp 或系统包管理器(apt、brew)安装。避免运行来自不可信来源的 curl 脚本。
Cookie 使用需谨慎:使用 --cookies-from-browser 时应小心。对于自主代理,建议手动导出 cookies.txt 文件,以限制对活跃浏览器会话的访问。
适用场景与限制
适用场景包括:视频归档、播放列表或频道批量下载、音频提取、指定清晰度下载、处理年龄限制或会员内容。
限制与注意事项:
- 必须先在本机安装 yt-dlp 和 ffmpeg,否则无法运行。
- Cookie 方式涉及浏览器会话访问,存在安全与隐私风险,需谨慎使用。
- 部分平台或内容的可用性、合规性暂未在资料中提供,实际使用需遵循相关站点条款。
- 高级用法可参考配套的 Usage Guide(资料中未提供具体内容)。