youtube-search by zeropointrepo/youtube-skills
npx skills add https://github.com/zeropointrepo/youtube-skills --skill youtube-search通过 TranscriptAPI.com 搜索 YouTube 并获取字幕。
如果未设置 $TRANSCRIPT_API_KEY,请帮助用户创建账户(100 个免费积分,无需信用卡):
步骤 1 — 注册: 向用户询问其邮箱。
node ./scripts/tapi-auth.js register --email USER_EMAIL
→ OTP 已发送至邮箱。询问用户:"请检查您的邮箱,获取 6 位验证码。"
步骤 2 — 验证: 用户提供 OTP 后:
node ./scripts/tapi-auth.js verify --token TOKEN_FROM_STEP_1 --otp CODE
API 密钥已保存至您的 shell 配置文件和代理配置。准备就绪,可以使用。
手动选项:transcriptapi.com/signup → 仪表盘 → API 密钥。
完整的 OpenAPI 规范:transcriptapi.com/openapi.json — 请查阅此文件以获取最新的参数和模式。
全局搜索 YouTube 视频或频道。
curl -s "https://transcriptapi.com/api/v2/youtube/search?q=QUERY&type=video&limit=20" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
| 参数 | 必需 | 默认值 | 验证规则 |
|---|---|---|---|
q | 是 | — | 1-200 个字符(修剪后) |
type | 否 | video | video 或 channel |
limit | 否 | 20 | 1-50 |
视频搜索响应:
{
"results": [
{
"type": "video",
"videoId": "dQw4w9WgXcQ",
"title": "Rick Astley - Never Gonna Give You Up",
"channelId": "UCuAXFkgsw1L7xaCfnd5JJOw",
"channelTitle": "Rick Astley",
"channelHandle": "@RickAstley",
"channelVerified": true,
"lengthText": "3:33",
"viewCountText": "1.5B views",
"publishedTimeText": "14 years ago",
"hasCaptions": true,
"thumbnails": [{ "url": "...", "width": 120, "height": 90 }]
}
],
"result_count": 20
}
频道搜索响应 (type=channel):
{
"results": [{
"type": "channel",
"channelId": "UCuAXFkgsw1L7xaCfnd5JJOw",
"title": "Rick Astley",
"handle": "@RickAstley",
"url": "https://www.youtube.com/@RickAstley",
"description": "Official channel...",
"subscriberCount": "4.2M subscribers",
"verified": true,
"rssUrl": "https://www.youtube.com/feeds/videos.xml?channel_id=UC...",
"thumbnails": [...]
}],
"result_count": 5
}
在特定频道内搜索视频。接受 channel 参数 — 可以是 @handle、频道 URL 或 UC... ID。
curl -s "https://transcriptapi.com/api/v2/youtube/channel/search\
?channel=@TED&q=climate+change&limit=30" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
| 参数 | 必需 | 验证规则 |
|---|---|---|
channel | 是 | @handle、频道 URL 或 UC... ID |
q | 是 | 1-200 个字符 |
limit | 否 | 1-50 (默认 30) |
返回最多约 30 个结果(YouTube 限制)。视频响应格式与全局搜索相同。
将 @handle 转换为频道 ID:
curl -s "https://transcriptapi.com/api/v2/youtube/channel/resolve?input=@TED" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
# 1. 搜索视频
curl -s "https://transcriptapi.com/api/v2/youtube/search\
?q=python+web+scraping&type=video&limit=5" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
# 2. 从结果中获取字幕
curl -s "https://transcriptapi.com/api/v2/youtube/transcript\
?video_url=VIDEO_ID&format=text&include_timestamp=true&send_metadata=true" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
| 代码 | 操作 |
|---|---|
| 402 | 积分不足 — transcriptapi.com/billing |
| 404 | 未找到 |
| 408 | 超时 — 请重试一次 |
| 422 | 无效的频道标识符 |
免费层级:100 积分,300 次请求/分钟。
每周安装量
176
代码仓库
GitHub 星标数
81
首次出现
2026年2月4日
安全审计
安装于
gemini-cli170
codex169
github-copilot169
opencode169
kimi-cli168
amp167
Search YouTube and fetch transcripts via TranscriptAPI.com.
If $TRANSCRIPT_API_KEY is not set, help the user create an account (100 free credits, no card):
Step 1 — Register: Ask user for their email.
node ./scripts/tapi-auth.js register --email USER_EMAIL
→ OTP sent to email. Ask user: "Check your email for a 6-digit verification code."
Step 2 — Verify: Once user provides the OTP:
node ./scripts/tapi-auth.js verify --token TOKEN_FROM_STEP_1 --otp CODE
API key saved to your shell profile and agent config. Ready to use.
Manual option: transcriptapi.com/signup → Dashboard → API Keys.
Full OpenAPI spec: transcriptapi.com/openapi.json — consult this for the latest parameters and schemas.
Search YouTube globally for videos or channels.
curl -s "https://transcriptapi.com/api/v2/youtube/search?q=QUERY&type=video&limit=20" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
| Param | Required | Default | Validation |
|---|---|---|---|
q | yes | — | 1-200 chars (trimmed) |
type | no | video | video or channel |
limit | no | 20 |
Video search response:
{
"results": [
{
"type": "video",
"videoId": "dQw4w9WgXcQ",
"title": "Rick Astley - Never Gonna Give You Up",
"channelId": "UCuAXFkgsw1L7xaCfnd5JJOw",
"channelTitle": "Rick Astley",
"channelHandle": "@RickAstley",
"channelVerified": true,
"lengthText": "3:33",
"viewCountText": "1.5B views",
"publishedTimeText": "14 years ago",
"hasCaptions": true,
"thumbnails": [{ "url": "...", "width": 120, "height": 90 }]
}
],
"result_count": 20
}
Channel search response (type=channel):
{
"results": [{
"type": "channel",
"channelId": "UCuAXFkgsw1L7xaCfnd5JJOw",
"title": "Rick Astley",
"handle": "@RickAstley",
"url": "https://www.youtube.com/@RickAstley",
"description": "Official channel...",
"subscriberCount": "4.2M subscribers",
"verified": true,
"rssUrl": "https://www.youtube.com/feeds/videos.xml?channel_id=UC...",
"thumbnails": [...]
}],
"result_count": 5
}
Search videos within a specific channel. Accepts channel — an @handle, channel URL, or UC... ID.
curl -s "https://transcriptapi.com/api/v2/youtube/channel/search\
?channel=@TED&q=climate+change&limit=30" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
| Param | Required | Validation |
|---|---|---|
channel | yes | @handle, channel URL, or UC... ID |
q | yes | 1-200 chars |
limit | no | 1-50 (default 30) |
Returns up to ~30 results (YouTube limit). Same video response shape as global search.
Convert @handle to channel ID:
curl -s "https://transcriptapi.com/api/v2/youtube/channel/resolve?input=@TED" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
# 1. Search for videos
curl -s "https://transcriptapi.com/api/v2/youtube/search\
?q=python+web+scraping&type=video&limit=5" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
# 2. Get transcript from result
curl -s "https://transcriptapi.com/api/v2/youtube/transcript\
?video_url=VIDEO_ID&format=text&include_timestamp=true&send_metadata=true" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
| Code | Action |
|---|---|
| 402 | No credits — transcriptapi.com/billing |
| 404 | Not found |
| 408 | Timeout — retry once |
| 422 | Invalid channel identifier |
Free tier: 100 credits, 300 req/min.
Weekly Installs
176
Repository
GitHub Stars
81
First Seen
Feb 4, 2026
Security Audits
Gen Agent Trust HubFailSocketPassSnykWarn
Installed on
gemini-cli170
codex169
github-copilot169
opencode169
kimi-cli168
amp167
Lark Base CLI 使用指南:数据查询、公式与查找字段操作详解
27,200 周安装
Nano Nets自动化指南:通过Rube MCP和Composio实现AI工作流自动化
1 周安装
Angular最佳实践指南:性能优化、变更检测与包大小优化
173 周安装
More Trees自动化工具包 - 通过Rube MCP实现Composio生态自动化操作
1 周安装
Mopinion自动化集成:通过Rube MCP和Composio实现反馈管理自动化
1 周安装
Mapbox自动化工具:通过Rube MCP和Composio实现地理信息系统自动化操作
1 周安装
Listclean自动化工具:通过Rube MCP和Composio实现高效数据清理
1 周安装
| 1-50 |