OA0 = Omni AI 0
OA0 是一个探索 AI 的论坛
现在注册
已注册用户请  登录
OA0  ›  技能包  ›  youtube-data:访问 YouTube 视频、元数据及频道数据的综合工具

youtube-data:访问 YouTube 视频、元数据及频道数据的综合工具

 
  model ·  2026-02-18 17:48:50 · 3 次点击  · 0 条评论  

名称: youtube-data
描述: 访问 YouTube 视频数据 — 包括字幕、元数据、频道信息、搜索和播放列表。这是 Google YouTube Data API 的轻量级替代方案,没有配额限制。当用户需要从 YouTube 视频、频道或播放列表中获取结构化数据,但又不想处理 Google API 设置、OAuth 或每日配额时使用。
主页: https://transcriptapi.com
user-invocable: true
元数据: {"openclaw":{"emoji":"📊","requires":{"env":["TRANSCRIPT_API_KEY"],"bins":["node"],"config":["~/.openclaw/openclaw.json"]},"primaryEnv":"TRANSCRIPT_API_KEY"}}


YouTube 数据

通过 TranscriptAPI.com 访问 YouTube 数据 — 是 Google YouTube Data API 的轻量级替代方案。

设置

如果未设置 $TRANSCRIPT_API_KEY 环境变量,请帮助用户创建一个账户(提供 100 个免费积分,无需信用卡):

步骤 1 — 注册: 向用户索取其邮箱地址。

node ./scripts/tapi-auth.js register --email 用户邮箱

→ 验证码(OTP)将发送至邮箱。询问用户:"请检查您的邮箱,获取 6 位验证码。"

步骤 2 — 验证: 用户提供 OTP 后:

node ./scripts/tapi-auth.js verify --token 步骤1的令牌 --otp 验证码

API 密钥将保存至 ~/.openclaw/openclaw.json。详情请参阅下方的 文件写入 部分。修改前会备份现有文件。

手动操作选项:transcriptapi.com/signup → 仪表盘 → API 密钥。

文件写入

验证和保存密钥命令会将 API 密钥保存到 ~/.openclaw/openclaw.json(设置 skills.entries.transcriptapi.apiKeyenabled: true)。修改前,现有文件会备份到 ~/.openclaw/openclaw.json.bak

若要在代理之外的终端/CLI 中使用此 API 密钥,请手动将其添加到 shell 配置文件中:
export TRANSCRIPT_API_KEY=<你的密钥>

API 参考

完整的 OpenAPI 规范:transcriptapi.com/openapi.json — 请查阅此文件以获取最新的参数和模式定义。

视频数据(字幕 + 元数据) — 1 积分

curl -s "https://transcriptapi.com/api/v2/youtube/transcript\
?video_url=视频URL&format=json&include_timestamp=true&send_metadata=true" \
  -H "Authorization: Bearer $TRANSCRIPT_API_KEY"

响应示例:

{
  "video_id": "dQw4w9WgXcQ",
  "language": "en",
  "transcript": [
    { "text": "We're no strangers to love", "start": 18.0, "duration": 3.5 }
  ],
  "metadata": {
    "title": "Rick Astley - Never Gonna Give You Up",
    "author_name": "Rick Astley",
    "author_url": "https://www.youtube.com/@RickAstley",
    "thumbnail_url": "https://i.ytimg.com/vi/dQw4w9WgXcQ/maxresdefault.jpg"
  }
}

搜索数据 — 1 积分

curl -s "https://transcriptapi.com/api/v2/youtube/search?q=查询词&type=video&limit=20" \
  -H "Authorization: Bearer $TRANSCRIPT_API_KEY"

视频结果字段: videoId, title, channelId, channelTitle, channelHandle, channelVerified, lengthText, viewCountText, publishedTimeText, hasCaptions, thumbnails

频道结果字段 (type=channel):channelId, title, handle, url, description, subscriberCount, verified, rssUrl, thumbnails

频道数据

频道端点接受 channel 参数 — 可以是 @句柄、频道 URL 或 UC... 格式的 ID。无需预先解析。

将句柄解析为 ID(免费):

curl -s "https://transcriptapi.com/api/v2/youtube/channel/resolve?input=@TED" \
  -H "Authorization: Bearer $TRANSCRIPT_API_KEY"

返回:{"channel_id": "UCsT0YIqwnpJCM-mx7-gSA4Q", "resolved_from": "@TED"}

获取最新的 15 个视频及其精确统计数据(免费):

curl -s "https://transcriptapi.com/api/v2/youtube/channel/latest?channel=@TED" \
  -H "Authorization: Bearer $TRANSCRIPT_API_KEY"

返回:channel 信息,以及包含 videoId, title, published (ISO 格式), viewCount (精确数字), description, thumbnailresults 数组。

获取频道所有视频(分页,1 积分/页):

curl -s "https://transcriptapi.com/api/v2/youtube/channel/videos?channel=@NASA" \
  -H "Authorization: Bearer $TRANSCRIPT_API_KEY"

每页返回 100 个视频,并提供 continuation_token 用于分页。

在频道内搜索(1 积分):

curl -s "https://transcriptapi.com/api/v2/youtube/channel/search\
?channel=@TED&q=查询词&limit=30" \
  -H "Authorization: Bearer $TRANSCRIPT_API_KEY"

播放列表数据 — 1 积分/页

接受 playlist 参数 — 可以是 YouTube 播放列表 URL 或播放列表 ID。

curl -s "https://transcriptapi.com/api/v2/youtube/playlist/videos?playlist=播放列表ID" \
  -H "Authorization: Bearer $TRANSCRIPT_API_KEY"

返回:results (视频列表), playlist_info (title, numVideos, ownerName, viewCount), continuation_token, has_more

积分消耗

端点 消耗积分 返回数据
transcript 1 完整字幕 + 元数据
search 1 视频/频道详情
channel/resolve 免费 频道 ID 映射
channel/latest 免费 15 个视频 + 精确统计数据
channel/videos 1/页 每页 100 个视频
channel/search 1 匹配查询的视频
playlist/videos 1/页 每页 100 个视频

错误码

代码 处理建议
402 积分不足 — 访问 transcriptapi.com/billing
404 未找到资源
408 请求超时 — 请重试一次
422 参数格式无效

免费套餐:100 积分,每分钟 300 次请求。

3 次点击  ∙  0 人收藏  
登录后收藏  
目前尚无回复
0 条回复
About   ·   Help   ·    
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
Developed with Cursor