Youtube transcript
Skill ComeOnOliver/skillshub/skills/aiskillstore/marketplace/doyajin174/youtube-transcript
π§ The right skill, one API call. AI agent skills registry with token-efficient skill resolution. 5,000+ skills from 500+ top repos.
npx -y skills add ComeOnOliver/skillshub --skill youtube-transcriptAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its author says it does
Copied from the file, not written here
Download and process YouTube video transcripts using yt-dlp. Use this when extracting subtitles, creating summaries from videos, or processing video content.
The file declares its own license as MIT. That is the authorβs claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
2.9 KB, as published. Nobody here has run it
YouTube Transcript Downloader
μ νλΈ μμμμ μλ§μ μΆμΆνκ³ μ²λ¦¬νλ μ€ν¬μ λλ€.
Priority Order
1. yt-dlp μ€μΉ νμΈ
2. μ¬μ© κ°λ₯ν μλ§ λͺ©λ‘ νμΈ
3. μλ μλ§ μ°μ μλ
4. μλ μμ± μλ§ ν΄λ°±
5. μ΅ν μλ¨: Whisper λ³ν
Requirements
# macOS
brew install yt-dlp
# Linux
sudo apt install yt-dlp
# Universal
pip install yt-dlp
Workflow
Step 1: μλ§ λͺ©λ‘ νμΈ
yt-dlp --list-subs "VIDEO_URL"
Step 2: μλ μλ§ λ€μ΄λ‘λ (κΆμ₯)
# νκ΅μ΄ μλ§
yt-dlp --write-sub --sub-lang ko --skip-download "VIDEO_URL"
# μμ΄ μλ§
yt-dlp --write-sub --sub-lang en --skip-download "VIDEO_URL"
Step 3: μλ μμ± μλ§ (ν΄λ°±)
yt-dlp --write-auto-sub --sub-lang ko --skip-download "VIDEO_URL"
Step 4: VTT β ν μ€νΈ λ³ν
# VTT νμΌμμ νμμ€ν¬ν μ κ±°
sed '/^[0-9]/d; /^$/d; /-->/d' subtitle.ko.vtt > transcript.txt
Output Processing
μ€λ³΅ μ κ±°
μλ μμ± μλ§μ progressive μΊ‘μ μΌλ‘ μΈν΄ μ€λ³΅μ΄ λ§μ:
# μ€λ³΅ λΌμΈ μ κ±°
seen = set()
unique_lines = []
for line in lines:
if line not in seen:
seen.add(line)
unique_lines.append(line)
μμ½ μμ±
μΆμΆλ μλ§μΌλ‘:
- ν΅μ¬ λ΄μ© μμ½
- νμμ€ν¬νλ³ μ±ν° μμ±
- μ£Όμ ν€μλ μΆμΆ
Examples
Example 1: κ°μ μμ μμ½
User: μ΄ μ νλΈ κ°μ μμ½ν΄μ€ - https://youtube.com/watch?v=xxx
Claude:
1. yt-dlpλ‘ μλ§ λ€μ΄λ‘λ
2. VTT β ν
μ€νΈ λ³ν
3. ν΅μ¬ λ΄μ© μμ½ μμ±
4. νμμ€ν¬νλ³ λͺ©μ°¨ μ 곡
Example 2: λ€κ΅μ΄ μλ§ μΆμΆ
User: μ΄ μμμ μμ΄/νκ΅μ΄ μλ§ λ λ€ μΆμΆν΄μ€
Claude:
1. --list-subsλ‘ κ°μ© μΈμ΄ νμΈ
2. κ° μΈμ΄λ³ μλ§ λ€μ΄λ‘λ
3. μ 리λ ν
μ€νΈ νμΌ μ 곡
Error Handling
| μλ¬ | μμΈ | ν΄κ²°μ± |
|---|---|---|
yt-dlp not found | λ―Έμ€μΉ | brew/apt/pip μ€μΉ |
No subtitles available | μλ§ μμ | Whisper μ¬μ© μ μ |
Invalid URL | URL μ€λ₯ | URL νμ νμΈ |
Video unavailable | λΉκ³΅κ°/μμ | μ¬μ©μμκ² μλ¦Ό |
Whisper Fallback
μλ§μ΄ μ ν μλ κ²½μ° (μ¬μ©μ νμΈ νμ):
# νμΌ ν¬κΈ° νμΈ
yt-dlp --print filesize "VIDEO_URL"
# μ¬μ©μ μΉμΈ ν μ€λμ€ λ€μ΄λ‘λ
yt-dlp -x --audio-format mp3 "VIDEO_URL"
# Whisperλ‘ λ³ν
whisper audio.mp3 --language ko --model base
μ£Όμ: λμν/μ²λ¦¬ μκ° μμλ‘ μ¬μ©μ νμΈ νμ