项目简介
YTM(YouTube 字幕机)是一个网页应用程序,可自动从任何 YouTube 视频中提取时间戳和字幕。它使用 Stagehand 和 BrowserBase 进行浏览器自动化,导航到 YouTube 视频,提取字幕数据,并在一个干净、用户友好的界面中展示。
特性
-
简单 URL 输入:只需粘贴任何 YouTube 视频的 URL 即可提取其字幕 -
时间戳文本:查看带有准确时间戳的完整文本 -
交互式时间戳:点击任何时间戳即可跳转到视频中的该精确点 -
导出选项:复制整个字幕到剪贴板或下载为文本文件 -
响应式设计:在桌面和移动设备上无缝工作
如何工作
- Input: 用户输入 YouTube 视频网址
- 处理中:
-
该应用使用 Stagehand 自动化浏览器会话 -
它导航到 YouTube 视频 -
打开字幕面板 -
提取所有带有时间戳的转录条目 - Output: 显示带有可点击时间戳的格式化字幕
技术栈
-
前端:Next.js 与 React -
浏览器自动化:舞台手 SDK -
云执行:BrowserBase -
AI 处理:OpenAI 的 GPT 模型用于提取字幕
开始使用
先决条件
Node.js 和 npm
-
OpenAI API 密钥 浏览器基础 API 密钥和项目 ID(用于云执行)
安装
# Clone the repository
git clone https://github.com/zaidmukaddam/youtube-transcripts-machine.git
cd youtube-transcripts-machine
# Install dependencies
npm install
# Set up environment variables
cp .example.env .env.local
# Add your API keys to .env.local
配置
此项目可配置为使用不同的LLM提供商:
使用 OpenAI(默认)
# In .env
OPENAI_API_KEY=your_openai_api_key
使用 Anthropic Claude
ANTHROPIC_API_KEY=your_anthropic_api_key
-
更新 stagehand.config.ts
modelName: "claude-3-5-sonnet-latest"
modelClientOptions: { apiKey: process.env.ANTHROPIC_API_KEY }
本地运行
npm run dev
部署到生产
部署的最简单方法是使用 Vercel:
-
1点击上方的“使用 Vercel 部署”按钮 -
2 配置您的环境变量 -
3 部署!
项目链接
https://github.com/zaidmukaddam/youtube-transcripts-machine
扫码加入技术交流群,备注「开发语言-城市-昵称」
(文:GitHubStore)