faef9b47dc
Dify foi removido 06-03-2026. Skills brainstorm/discover ainda referenciam-no no corpo. Bump v1.2 + nota top-of-file. Reescrita workflow para próxima sessão. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
4.3 KiB
4.3 KiB
name, category, description, version, created, tools
| name | category | description | version | created | tools | |
|---|---|---|---|---|---|---|
| youtube-extract | dev-tools | Extrai transcrições e metadados de vídeos, playlists e canais YouTube para o ficheiro de pesquisa Stack_Pesquisa_Videos.md. Usar quando 'youtube', 'vídeo', 'playlist', 'canal', 'transcrição', 'extrair vídeo', 'pesquisa vídeos'. | 1.0.0 | 2026-04-04 |
|
Skill: /youtube-extract
Extrai transcrições e metadados de vídeos, playlists e canais YouTube usando o script youtube-pesquisa-videos.py. Adiciona automaticamente ao ficheiro de pesquisa do StackDescomplicar.
Ficheiros relevantes
| Ficheiro | Caminho |
|---|---|
| Script | /media/ealmeida/Dados/Dev/ClaudeDev/youtube-pesquisa-videos.py |
| Destino padrão | /media/ealmeida/Dados/Hub/04-Stack/Stack_Pesquisa_Videos.md |
Processo de execução
1. Identificar o pedido
Detectar na mensagem do utilizador:
- URLs — vídeos individuais, playlists (
?list=), canais (@canal,/c/,/channel/) - Limite — "primeiros 10", "máx 5", etc. → usar
--max N - Destino — ficheiro alternativo? → usar
--output caminho - Modo — adicionar ao ficheiro (
--append) vs mostrar no terminal (sem flag)
2. Construir o comando
python3 /media/ealmeida/Dados/Dev/ClaudeDev/youtube-pesquisa-videos.py \
URL1 URL2 ... \
[--max N] \
[--append] \
[--output /caminho/alternativo.md] \
[--file lista.txt]
3. Exemplos por tipo de URL
Vídeo individual:
python3 /media/ealmeida/Dados/Dev/ClaudeDev/youtube-pesquisa-videos.py \
"https://youtu.be/dQw4w9WgXcQ" --append
Playlist completa:
python3 /media/ealmeida/Dados/Dev/ClaudeDev/youtube-pesquisa-videos.py \
"https://youtube.com/playlist?list=PLxxx" --append
Playlist com limite:
python3 /media/ealmeida/Dados/Dev/ClaudeDev/youtube-pesquisa-videos.py \
"https://youtube.com/playlist?list=PLxxx" --max 10 --append
Canal completo (máx. 20):
python3 /media/ealmeida/Dados/Dev/ClaudeDev/youtube-pesquisa-videos.py \
"https://youtube.com/@NomeCanal" --max 20 --append
Mix de URLs:
python3 /media/ealmeida/Dados/Dev/ClaudeDev/youtube-pesquisa-videos.py \
"https://youtu.be/ID1" \
"https://youtube.com/playlist?list=PLxxx" \
--max 5 --append
Ficheiro de lista:
python3 /media/ealmeida/Dados/Dev/ClaudeDev/youtube-pesquisa-videos.py \
--file /caminho/lista.txt --append
Pré-visualizar sem gravar:
python3 /media/ealmeida/Dados/Dev/ClaudeDev/youtube-pesquisa-videos.py \
"https://youtu.be/ID1"
Comportamento padrão
| Situação | Acção |
|---|---|
| URL única de vídeo | Extrair e perguntar se adiciona ao ficheiro |
| Múltiplos vídeos | Extrair todos e adicionar com --append |
| Playlist/canal sem limite | Alertar o utilizador — perguntar limite antes de executar |
| Ficheiro de destino não especificado | Usar Stack_Pesquisa_Videos.md |
Aviso obrigatório para playlists/canais sem
--max: Informar o utilizador do número de vídeos antes de processar — canais podem ter centenas.
Após a extracção
- Informar quantos vídeos foram adicionados e os números
#Natribuídos - Sugerir ao utilizador que complete os campos
*(a completar)*no ficheiro - Se houver erros (transcrição indisponível), mencionar quais os vídeos afectados
- Opcional: abrir o ficheiro no editor —
xdg-open "Stack_Pesquisa_Videos.md"
Pré-requisitos
yt-dlpinstalado:pip install yt-dlpoubrew install yt-dlp- Python 3.8+
- Acesso à internet
Verificar disponibilidade:
yt-dlp --version && python3 --version
Casos especiais
ID curto do YouTube (11 chars):
python3 /media/ealmeida/Dados/Dev/ClaudeDev/youtube-pesquisa-videos.py dQw4w9WgXcQ --append
Destino alternativo (outro projecto):
python3 /media/ealmeida/Dados/Dev/ClaudeDev/youtube-pesquisa-videos.py \
"https://youtu.be/ID1" \
--output "/media/ealmeida/Dados/Hub/05-Projectos/MeuProjecto/videos.md" \
--append
Healing Log
Registo de erros conhecidos e como evitá-los. Lido automaticamente antes de executar.
{"date":"","issue":"","fix":"","source":"user|auto"}
Adicionar nova linha após cada erro corrigido.