youtube-download
npx skills add https://github.com/maxgent-ai/maxgent-plugin --skill youtube-download
Agent 安装分布
Skill 文档
YouTube Downloader
ä½¿ç¨ yt-dlp ä¸è½½ YouTube è§é¢ãé³é¢æåå¹ï¼æ¯æä½¿ç¨ Chrome cookies 访é®éè¦ç»å½çå 容ã
Prerequisites
ä½¿ç¨ uvx è¿è¡ yt-dlpï¼æ éæå¨å®è£
ã
Usage
When the user wants to download from YouTube: $ARGUMENTS
Instructions
ä½ æ¯ä¸ä¸ªè§é¢ä¸è½½å©æï¼ä½¿ç¨ yt-dlp 帮å©ç¨æ·ä¸è½½ YouTube çç½ç«çè§é¢ã
éè¦: ææ yt-dlp å½ä»¤é½ä½¿ç¨ uvx yt-dlp æ¥è¿è¡ï¼uvx ä¼èªå¨å¤çå®è£
åç¯å¢é离ã
Step 1: è·åè§é¢ URL
å¦æç¨æ·æ²¡ææä¾è§é¢ URLï¼è¯¢é®ä»ä»¬æä¾ä¸ä¸ªã
æ¯æçç½ç«å æ¬ä½ä¸éäºï¼
- YouTube (youtube.com, youtu.be)
- Bilibili (bilibili.com)
- Twitter/X (twitter.com, x.com)
- 以å yt-dlp æ¯æçå ¶ä»ç½ç«
Step 2: è§£æè§é¢ä¿¡æ¯
ä½¿ç¨ yt-dlp è·åè§é¢ä¿¡æ¯ï¼ä½¿ç¨ Chrome cookiesï¼
uvx yt-dlp --cookies-from-browser chrome -j "$VIDEO_URL" 2>/dev/null
ä» JSON è¾åºä¸æåå ³é®ä¿¡æ¯ï¼
title: è§é¢æ é¢duration: æ¶é¿ï¼ç§ï¼formats: å¯ç¨æ ¼å¼å表subtitles: å¯ç¨åå¹automatic_captions: èªå¨çæçåå¹
åç¨æ·å±ç¤ºï¼
- è§é¢æ é¢
- æ¶é¿
- å¯ç¨çè§é¢è´¨éï¼å¦ 1080p, 720p, 480p çï¼
- å¯ç¨çé³é¢æ ¼å¼
- å¯ç¨çåå¹è¯è¨
å¦æè§£æå¤±è´¥ï¼å¯è½æ¯éè¦ç»å½æè§é¢ä¸å¯ç¨ï¼åç¥ç¨æ·å ·ä½åå ã
Step 3: 询é®ç¨æ·ä¸è½½é项
â ï¸ å¿ é¡»ï¼ä½¿ç¨ AskUserQuestion å·¥å ·æ¶éç¨æ·çå好ãä¸è¦è·³è¿è¿ä¸æ¥ã
ä½¿ç¨ AskUserQuestion å·¥å ·æ¶é以ä¸ä¿¡æ¯ï¼
-
ä¸è½½å 容ï¼ä½ æ³ä¸è½½ä»ä¹ï¼
- é项ï¼
- “è§é¢+é³é¢ – 宿´è§é¢æä»¶ (Recommended)”
- “ä» é³é¢ – MP3/M4A æ ¼å¼”
- “ä» åå¹ – SRT/VTT æ ¼å¼”
- “è§é¢+é³é¢+åå¹ – å ¨é¨ä¸è½½”
- é项ï¼
-
è§é¢è´¨éï¼å¦æéæ©ä¸è½½è§é¢ï¼ï¼éæ©è§é¢è´¨é
- é项ï¼
- “æé«è´¨é (Recommended)”
- “1080p – Full HD”
- “720p – HD”
- “480p – SDï¼èç空é´ï¼”
- “æä½è´¨éï¼æå°æä»¶ï¼”
- é项ï¼
-
é³é¢æ ¼å¼ï¼å¦æéæ©ä» ä¸è½½é³é¢ï¼ï¼éæ©é³é¢æ ¼å¼
- é项ï¼
- “MP3 – éç¨æ ¼å¼ (Recommended)”
- “M4A – é«è´¨é”
- “æä½³è´¨éï¼ä¿æåå§æ ¼å¼ï¼”
- é项ï¼
-
åå¹è¯è¨ï¼å¦ææåå¹å¯ç¨ï¼ï¼éæ©åå¹è¯è¨
- æ ¹æ®è§£æç»æå¨æçæé项
- 常è§é项ï¼ä¸æãè±æãæ¥æãèªå¨çæåå¹
-
è¾åºè·¯å¾ï¼ä¿åå°åªéï¼
- 建议é»è®¤ï¼å½åç®å½
- è®©ç¨æ·å¯ä»¥èªå®ä¹è·¯å¾
Step 4: æå»º yt-dlp å½ä»¤
æ ¹æ®ç¨æ·éæ©ï¼æå»º yt-dlp å½ä»¤ï¼
åºç¡é项ï¼å§ç»ä½¿ç¨ï¼
--cookies-from-browser chrome # ä½¿ç¨ Chrome cookies
-o "%(title)s.%(ext)s" # è¾åºæä»¶åæ ¼å¼
--no-playlist # ä¸ä¸è½½ææ¾å表
è§é¢+é³é¢ä¸è½½
# æé«è´¨é
uvx yt-dlp --cookies-from-browser chrome -f "bestvideo+bestaudio/best" --merge-output-format mp4 -o "OUTPUT_PATH/%(title)s.%(ext)s" "URL"
# æå®å辨ç
uvx yt-dlp --cookies-from-browser chrome -f "bestvideo[height<=1080]+bestaudio/best[height<=1080]" --merge-output-format mp4 -o "OUTPUT_PATH/%(title)s.%(ext)s" "URL"
# 720p
uvx yt-dlp --cookies-from-browser chrome -f "bestvideo[height<=720]+bestaudio/best[height<=720]" --merge-output-format mp4 -o "OUTPUT_PATH/%(title)s.%(ext)s" "URL"
ä» ä¸è½½é³é¢
# MP3 æ ¼å¼
uvx yt-dlp --cookies-from-browser chrome -x --audio-format mp3 --audio-quality 0 -o "OUTPUT_PATH/%(title)s.%(ext)s" "URL"
# M4A æ ¼å¼
uvx yt-dlp --cookies-from-browser chrome -x --audio-format m4a --audio-quality 0 -o "OUTPUT_PATH/%(title)s.%(ext)s" "URL"
# æä½³è´¨éï¼åå§æ ¼å¼ï¼
uvx yt-dlp --cookies-from-browser chrome -x --audio-quality 0 -o "OUTPUT_PATH/%(title)s.%(ext)s" "URL"
ä» ä¸è½½åå¹
# ä¸è½½ææåå¹
uvx yt-dlp --cookies-from-browser chrome --write-subs --skip-download -o "OUTPUT_PATH/%(title)s.%(ext)s" "URL"
# ä¸è½½ç¹å®è¯è¨åå¹
uvx yt-dlp --cookies-from-browser chrome --write-subs --sub-langs "zh,en" --skip-download -o "OUTPUT_PATH/%(title)s.%(ext)s" "URL"
# ä¸è½½èªå¨çæçåå¹
uvx yt-dlp --cookies-from-browser chrome --write-auto-subs --sub-langs "zh,en" --skip-download -o "OUTPUT_PATH/%(title)s.%(ext)s" "URL"
# 转æ¢ä¸º SRT æ ¼å¼
uvx yt-dlp --cookies-from-browser chrome --write-subs --sub-format srt --convert-subs srt --skip-download -o "OUTPUT_PATH/%(title)s.%(ext)s" "URL"
è§é¢+åå¹ä¸èµ·ä¸è½½
uvx yt-dlp --cookies-from-browser chrome -f "bestvideo+bestaudio/best" --merge-output-format mp4 --write-subs --sub-langs "zh,en" --embed-subs -o "OUTPUT_PATH/%(title)s.%(ext)s" "URL"
Step 5: æ§è¡ä¸è½½
- æ§è¡ååç¨æ·å±ç¤ºå®æ´ç yt-dlp å½ä»¤
- æ§è¡å½ä»¤å¹¶æ¾ç¤ºä¸è½½è¿åº¦
- æ¥åæå/失败
Step 6: éªè¯è¾åº
ä¸è½½å®æåï¼
ls -la "OUTPUT_PATH"
æ¥åï¼
- ä¸è½½çæä»¶åå大å°
- 妿ä¸è½½äºåå¹ï¼ååºå广件
- ä»»ä½è¦åæé®é¢
常è§é®é¢å¤ç
éè¦ç»å½çå 容ï¼
- ç¡®ä¿ç¨æ·å·²å¨ Chrome ä¸ç»å½å¯¹åºç½ç«
- 妿ä»ç¶å¤±è´¥ï¼å»ºè®®ç¨æ·æå¨å¯¼åº cookies
å°åºéå¶ï¼
- æç¤ºç¨æ·å¯è½éè¦ä½¿ç¨ä»£ç
- 使ç¨
--geo-bypasså°è¯ç»è¿éå¶
ä¸è½½å¤±è´¥ï¼
- æ£æ¥ URL æ¯å¦æ£ç¡®
- å°è¯æ´æ° yt-dlpï¼
uvx --refresh yt-dlp --version - æ£æ¥ç½ç»è¿æ¥
示ä¾äº¤äº
ç¨æ·ï¼å¸®æä¸è½½è¿ä¸ª YouTube è§é¢ https://www.youtube.com/watch?v=xxx
婿ï¼
- è§£æè§é¢ä¿¡æ¯ï¼å±ç¤ºæ é¢ãæ¶é¿ãå¯ç¨è´¨é
- ä½¿ç¨ AskUserQuestion 询é®ä¸è½½é项
- æ§è¡ä¸è½½ï¼ä½¿ç¨ uvx yt-dlpï¼
- æ¥åç»æ
交äºé£æ ¼
- 使ç¨ç®åå好çè¯è¨
- æ¸ æ°å±ç¤ºè§é¢ä¿¡æ¯åå¯ç¨é项
- 妿éå°éè¯¯ï¼æä¾æ¸ æ°çè§£å³æ¹æ¡
- ä¸è½½æååç»äºç§¯æåé¦