太长不看
快速高效地提取并总结 YouTube 视频的字幕文本。
tldw 技能接收一个 YouTube 视频 URL,提取其字幕文本,并提供全面的内容摘要。这使您无需观看完整视频即可快速理解其内容。
此技能旨在解决视频内容带来的信息过载问题。您无需花费 10 到 60 分钟观看视频,即可在几秒钟内获得包含要点、主要论点和结论的简明摘要。
在以下情况下使用此技能:
- 用户提供了 YouTube 视频 URL 并要求摘要
- 您需要快速理解视频内容而无需观看
- 您想要分析或引用特定的视频内容
- 您需要从教育、新闻或纪录片视频中提取信息
此技能基于 stong 的 tldw 项目。完整的归属和许可详情请参阅 ATTRIBUTION.md 文件。
该技能使用 Python 虚拟环境,包含以下依赖项:
所有依赖项都安装在本地虚拟环境 venv/ 目录下。
--cookies 标志引用tldw/
├── SKILL.md # 本文档
├── ATTRIBUTION.md # 原始项目归属说明
├── LICENSE # AGPL-3.0 许可证
├── scripts/
│ └── extract_transcript.py # 主提取脚本
├── cache/ # 缓存字幕(自动创建)
└── venv/ # Python 虚拟环境
├── bin/
│ └── yt-dlp # 视频字幕下载器
└── lib/ # Python 包
按照以下步骤设置 tldw 技能:
进入技能目录:
bash
cd tldw/
创建 Python 虚拟环境:
bash
python3 -m venv venv
安装依赖项:
bash
venv/bin/pip install yt-dlp webvtt-py
验证安装:
bash
venv/bin/yt-dlp --version
缓存目录将在首次使用时自动创建
现在技能已准备就绪!
当用户提供 YouTube URL 并要求摘要时,请遵循以下工作流程:
cd tldw/ && \
venv/bin/python scripts/extract_transcript.py \
--json --cache-dir cache "YOUTUBE_URL"
脚本返回的 JSON 结构如下:
{
"transcript": "完整的清理后字幕文本...",
"video_id": "视频ID",
"title": "视频标题",
"description": "视频描述...",
"duration": 1234,
"uploader": "频道名称",
"upload_date": "20260101",
"view_count": 12345,
"webpage_url": "https://www.youtube.com/watch?v=..."
}
提取 transcript 字段并直接处理以创建全面的摘要。
--json:以 JSON 格式输出(推荐用于解析)--cache-dir <路径>:指定缓存目录(默认:cache/)--cookies <文件>:用于访问年龄限制内容的 Netscape 格式 Cookie 文件路径# 1. 提取字幕
cd tldw/ && \
venv/bin/python scripts/extract_transcript.py \
--json --cache-dir cache "https://www.youtube.com/watch?v=VIDEO_ID"
# 2. 解析 JSON 输出并提取 transcript 字段
# 3. 直接总结字幕文本(包含要点、关键论点、结论)
# 4. 向用户返回格式化摘要
对于年龄限制或会员专属视频,请从浏览器导出 Cookie:
youtube_cookies.txt)--cookies youtube_cookies.txt"No subtitles/captions found""ERROR: unable to download video data""Sign in to confirm your age" 或类似的身份验证错误。--cookies 标志并配合导出的浏览器 Cookie(参见上文的“访问年龄限制内容”)。"Unable to download"、"Connection timeout"、提取失败。bash
cd tldw/ && \
venv/bin/pip install --upgrade yt-dlpYouTube 经常更改其 API,因此保持 yt-dlp 更新至关重要。
df -h 检查可用磁盘空间,并验证 cache/ 目录的写入权限。要查看完整的错误输出(不仅仅是最后 100 行):
cd tldw/ && \
venv/bin/python scripts/extract_transcript.py \
--json --cache-dir cache "YOUTUBE_URL"
要检查缓存的字幕:
ls -lh tldw/cache/