YouTube Transcript (yt-dlp captions)

📜 YouTube字幕一键提取,本地缓存更安全

基于yt-dlp的YouTube转录提取工具,支持手动/自动生成字幕、时间戳与纯文本输出,含本地SQLite缓存机制。

收藏
9.5k
安装
3.2k
版本
1.0.5
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

yt_transcript 是一个专门用于提取YouTube视频字幕/转录文本的命令行工具。它通过封装 yt-dlp 实现核心功能,支持直接解析视频URL或11位视频ID。运行时优先获取创作者上传的手动字幕,若不存在则自动降级至YouTube自动生成的字幕

输出格式灵活:默认返回带时间戳的JSON分段结构(startdurationtext),也可通过 --text 切换为纯文本模式,--no-ts 可移除时间戳。语言筛选通过 --lang 参数实现。所有结果默认缓存至本地SQLite数据库,避免重复请求。

显著优点

  • 权威数据源:直接对接YouTube官方字幕流,不依赖第三方转录服务商,数据可信度与隐私可控性更强
  • 双重降级机制:手动字幕 → 自动生成字幕 → YouTube网页版转录面板(youtubei get_transcript),提升覆盖率
  • 隐私优先设计:明确不调用外部API,视频ID/URL仅与YouTube官方交互
  • 本地缓存加速:SQLite持久化存储,重复查询毫秒级响应
  • 安全路径约束:cookies与缓存路径被严格限制在批准目录(~/.config/yt-transcript/{baseDir}/cache/),降低凭证泄露风险

潜在缺点与局限性

  • 依赖外部工具:必须预先安装 python3yt-dlp,对非技术用户门槛较高
  • 网络访问受限:VPS或数据中心IP频繁触发YouTube反爬机制,需额外配置cookies文件
  • 字幕覆盖盲区:若视频创作者关闭字幕且自动识别不可用(如音乐视频、低质量音频),则完全无法提取
  • 无实时转录能力:仅处理已有字幕,不支持音频直接转文本(需依赖YouTube的语音识别结果)
  • Cookie管理负担:虽然设计为"可选",但实际生产环境(服务器部署)几乎必需,且需手动维护Netscape格式cookies.txt

适合人群

  • 研究人员、内容分析师:批量提取视频文本用于NLP分析、关键词索引
  • 开发者构建AI摘要工作流:将YouTube内容转为LLM可处理的文本输入
  • 隐私敏感用户:拒绝第三方转录服务,坚持本地/官方直连方案
  • 多语言学习者:通过 --lang 提取特定语言字幕辅助学习

常规风险

| 风险类型 | 说明 |
|---------|------|
| **账号封禁** | 高频请求+数据中心IP易触发YouTube风控,cookies对应的Google账号可能被限制 |
| **凭证泄露** | cookies.txt含敏感登录态,若误提交至版本控制或共享目录将导致账号接管 |
| **版权合规** | 提取的转录文本仍受原视频版权约束,大规模分发需评估合理使用边界 |
| **依赖失效** | `yt-dlp` 需随YouTube前端更新频繁迭代,长期未更新可能导致功能断裂 |
| **缓存膨胀** | SQLite数据库无自动清理机制,高频使用需手动维护存储空间 |

YouTube Transcript (yt-dlp captions) 内容

scripts文件夹
手动下载zip · 13.8 kB
yt_transcript.pytext/plain
请选择文件