← 回總覽

baoyu-youtube-transcript 详细技术解析与使用指南

📅 2026-03-22 12:31 宝玉 人工智能 2 分鐘 1331 字 評分: 89
Agent Skill YouTube 字幕提取 技术解析 AI Tool
📌 一句话摘要 详细介绍 baoyu-youtube-transcript 工具的技术原理、工作机制和使用方法,包含智能断句、章节分割、AI 说话人识别和缓存机制等技术细节。 📝 详细摘要 这是推文 1 的中文详细版本,提供了更完整的技术实现说明。工具通过调用 YouTube 内部 InnerTube API 获取字幕数据,无需 API Key。核心功能包括:智能断句处理(对 CJK 文字特殊适配)、章节自动解析、基于 AI 的说话人识别(三层优先级:元数据推断→对话内容判断→通用标签),以及完整的缓存机制(meta.json、原始字幕、断句后字幕、封面图)。支持多种链接格式输入,可输出

发布一个新的 Skill:baoyu-youtube-transcript

输入 YouTube URL,直接抓取视频字幕,生成带章节、发言人和封面图的文档,不需要任何 API Key。 【怎么用】

选择这个 Skill,把 YouTube 链接丢进去就行。支持完整链接、短链接、嵌入链接、Shorts 链接,甚至直接输入视频 ID 都可以。

默认输出带时间戳的 Markdown 格式,也可以导出 SRT 字幕文件。支持多语言,可以指定优先语言,也可以翻译成其他语言。

第一次抓取后会自动缓存原始数据,之后换格式、换参数都不用重新请求,秒出结果。

【工作原理】

底层调用的是 YouTube 的 InnerTube API,这是 YouTube 内部用来获取字幕数据的接口,公开可用但没有官方文档。好处是不需要 Google API Key,不需要 OAuth 认证,脚本直接发请求就能拿到字幕数据。

拿到原始字幕后,脚本会做一次智能断句处理:按句末标点(句号、问号、感叹号等)切分,跨字幕片段合并成完整句子,时间戳按字符长度等比分配,对中日韩文字做了专门适配。这样输出的文本是自然的句子,不是 YouTube 那种碎片化的逐行字幕。

【章节分割】

如果视频描述里有章节时间戳(比如 "0:00 Introduction"),脚本会自动解析,按章节把字幕分段,生成带目录的 Markdown。没有章节信息的视频,就按段落分组输出。

【说话人识别】

这是最有意思的部分。YouTube 字幕本身不带说话人信息,所以识别说话人需要 AI 后处理。

流程是这样的:先用 --speakers 参数抓取原始字幕,脚本会把视频元数据(标题、频道名、简介)和 SRT 格式的原始字幕一起输出到一个 Markdown 文件里。然后启动一个 AI 子代理(用 Claude Sonnet,够用且省成本),按预设的 Prompt 模板处理这个文件。

AI 识别说话人的逻辑分三层优先级:首先从元数据推断,视频标题通常包含嘉宾名字,频道名就是主持人;其次从对话内容判断,比如自我介绍、互相称呼;都不行就用通用标签(Speaker 1、Host 之类),保持全文一致。如果后面对话中才出现名字,会回溯更新前面所有标签。

处理完的输出是带说话人标签的分段对话,长独白会被切成 2-4 句一段,每段末尾带时间范围。

【缓存机制】

第一次运行会缓存四样东西:视频元数据(meta.json)、原始字幕片段(transcript-raw.json)、断句后的字幕(transcript-sentences.json)、视频封面图(cover.jpg)。之后不管切换格式还是重新生成,都直接用缓存,不再请求网络。加 --refresh 参数可以强制刷新。

安装命令:

$ npx skills add jimliu/baoyu-skills --skill baoyu-youtube-transcript

项目地址:github.com/jimliu/baoyu-s…

查看原文 → 發佈: 2026-03-22 12:31:47 收錄: 2026-03-22 14:00:43

🤖 問 AI

針對這篇文章提問,AI 會根據文章內容回答。按 Ctrl+Enter 送出。