技能 数据科学 YouTube视频内容分析与字幕提取

YouTube视频内容分析与字幕提取

v20260603
youtube-full
本工具提供全面的YouTube内容分析能力,支持提取视频字幕、搜索视频、浏览频道和监控新上传内容。它能通过专业的API,进行详细的字幕分析、内容总结和播放列表管理。适用于需要从视频内容中获取结构化数据,如研究人员、内容策略师和市场分析师。
获取技能
383 次下载
概览

youtube-full — YouTube Transcripts, Search, and Channel Data

Covers transcript extraction, video search, channel browsing, in-channel search, playlist extraction, and new-upload monitoring via TranscriptAPI.

Source: Ported from ZeroPointRepo/youtube-skills (MIT). Original skill authored by ZeroPointRepo contributors. Adapted for the claude-skills format.

BYOK / free-tier note: TranscriptAPI is a commercial service (BYOK — you bring your own key; 100 free credits included, no card required). For local/self-hosted extraction without an API key, use youtube-transcript-api (Python) or yt-dlp as OSS fallbacks. See Anti-Patterns for guidance.

API Setup

Every request to transcriptapi.com requires two headers:

  • Authorization: Bearer $TRANSCRIPT_API_KEY
  • User-Agent: ClaudeCode/1.0

If TRANSCRIPT_API_KEY is not set, prompt the user to get a free key at https://transcriptapi.com (100 free credits, no card required) and store it as TRANSCRIPT_API_KEY.

Operations

Get transcript (1 credit)

GET https://transcriptapi.com/api/v2/youtube/transcript
  ?video_url={URL_OR_ID}&format=text&include_timestamp=true&send_metadata=true

Use this for any "get transcript", "summarize video", or "extract quotes" request.

Search YouTube (1 credit)

GET https://transcriptapi.com/api/v2/youtube/search
  ?q={QUERY}&type=video&limit=20

Use this when the user wants to find videos on a topic. Follow with transcript calls on selected results.

Channel — latest uploads (FREE)

GET https://transcriptapi.com/api/v2/youtube/channel/latest
  ?channel={@HANDLE_OR_ID}

Returns the 15 most recent uploads with view counts and publish timestamps. Use before fetching transcripts to check whether uploads are new.

Channel — all videos (1 credit/page)

GET https://transcriptapi.com/api/v2/youtube/channel/videos
  ?channel={@HANDLE_OR_ID}

Paginate with ?continuation=TOKEN on subsequent pages.

In-channel search (1 credit)

GET https://transcriptapi.com/api/v2/youtube/channel/search
  ?channel={@HANDLE_OR_ID}&q={QUERY}&limit=30

Prefer this over broad YouTube search when the user already knows the channel.

Playlist extraction (1 credit/page)

GET https://transcriptapi.com/api/v2/youtube/playlist/videos
  ?playlist={PLAYLIST_URL_OR_ID}

Paginate with ?continuation=TOKEN. Response includes playlist_info, results, has_more.

Resolve handle (FREE)

GET https://transcriptapi.com/api/v2/youtube/channel/resolve
  ?input={@HANDLE_OR_URL}

Returns {"channel_id": "UC...", "resolved_from": "@handle"}.

Credit Costs Summary

Endpoint Cost
transcript 1
search 1
channel/resolve free
channel/latest free
channel/videos 1/page
channel/search 1
playlist/videos 1/page

Failed or rate-limited calls return a structured error and cost zero credits.

Common Workflows

Research workflow

  1. Search (/search?q=...) — pick the most relevant results
  2. Fetch transcripts (/transcript?video_url=...) for selected videos
  3. Summarize or extract quotes from transcript text

Channel monitoring

  1. channel/latest (free) — check for new uploads
  2. If new videos found, fetch transcripts
  3. Extract signal (announcements, topics)

Playlist to corpus

  1. playlist/videos — get all video IDs in the playlist
  2. Batch-fetch transcripts, pausing if near credit limit
  3. Assemble transcripts into a searchable document set

Decision Rules

  • When the user provides a YouTube URL, video ID, or @handle, use the matching endpoint directly — do not search first
  • When the user says "monitor" or "check for new uploads", use channel/latest (free) first
  • Use channel/search when the user knows which channel and wants to find a topic within it
  • Use search (type=channel) to find a channel when the user doesn't know the handle
  • Do not batch-transcribe an entire channel unless the user explicitly asks for that

Error Handling

Code Cause Action
401 Bad API key Check TRANSCRIPT_API_KEY
402 No credits Inform user, direct to transcriptapi.com/billing
403/1010 Missing User-Agent Add User-Agent header
404 No captions found Inform user — zero credits charged
408 Timeout Retry once after 2 seconds
429 Rate limited Respect Retry-After header

Limitations

  • Transcripts require captions (manual or auto-generated). Some videos have no captions — this returns a 404 and costs zero credits.
  • Private and age-restricted videos are not accessible.
  • Live stream transcripts are unstable until the stream ends.
  • Rate limit: 300 requests/minute on the free tier.
  • This skill does not download audio or video files. For local file download, use yt-dlp directly.

Anti-Patterns

  • Don't use TranscriptAPI for bulk downloads of entire channels without user confirmation — credit costs add up fast; use channel/latest (free) to check for new content first
  • Don't hardcode the API key — always use TRANSCRIPT_API_KEY environment variable
  • Don't claim "no vendor dependency" — TranscriptAPI is a commercial service. If the user needs a zero-cost or self-hosted path: youtube-transcript-api (Python, no auth needed for public videos) or yt-dlp --write-subs are OSS alternatives with different trade-offs (no search, no channel API, but free and local)
  • Don't batch-transcribe without checking credits — check remaining credits before large operations

OSS Fallback Paths

If the user cannot or will not use TranscriptAPI:

Need OSS Alternative Trade-offs
Single transcript youtube-transcript-api (Python) No search; no channel API; captions only
Download + subtitles yt-dlp --write-subs Requires local install; no REST; slower
Channel monitoring Parse YouTube RSS feed (/feeds/videos.xml?channel_id=...) Free, no auth; limited metadata

Cross-References

  • marketing-skill/skills/video-content-strategist — for video strategy, scripting, and content planning
  • marketing-skill/skills/social-media-manager — for publishing and scheduling derived from transcripts
  • marketing-skill/skills/content-production — for turning transcripts into blog posts, summaries, or articles
信息
Category 数据科学
Name youtube-full
版本 v20260603
大小 7.17KB
更新时间 2026-06-05
语言