Buscador de Transcrições de Podcast
Busque transcrições de 5 podcasts suportados. O Tier 2 (RSS+Groq Whisper) é a abordagem recomendada — rápido, gratuito e o mais confiável em todos os podcasts. As fontes gratuitas do Tier 1 são de melhor esforço (disponibilidade limitada). A API Taddy do Tier 3 é a opção premium/comercial.
Referência Rápida
# Obtém a transcrição do episódio mais recente (detecta automaticamente o melhor método)
python scripts/get_transcript.py "Lenny's Podcast" --latest
# Busca por título ou número do episódio
python scripts/get_transcript.py 20vc --episode "Marc Andreessen"
python scripts/get_transcript.py dwarkesh --episode 15
# Força um método específico
python scripts/get_transcript.py "cheeky pint" --latest --method whisper
python scripts/get_transcript.py a16z --latest --method taddy
# Salva em arquivo
python scripts/get_transcript.py lennys --latest --output transcript.md
# Lista todos os podcasts suportados
python scripts/get_transcript.py --list-podcasts
Podcasts Suportados
| Podcast | Tier 1 (melhor esforço) | Tier 2 RSS+Whisper [RECOMENDADO] | Tier 3 Taddy (premium) |
|---|---|---|---|
| Lenny's Podcast | Arquivo do GitHub (269 transcrições) | ✅ RSS do Substack | ✅ Coberto |
| Dwarkesh Podcast | Raspagem do site + PDF do Substack | ✅ RSS do Substack | ✅ Coberto |
| Cheeky Pint | (nenhum) | ✅ RSS do Transistor.fm | ✅ Coberto |
| 20VC | PDF do Substack | ✅ RSS do Libsyn | ✅ Coberto |
| A16z Podcast | Raspagem do site | ✅ RSS do Simplecast | ✅ Coberto |
Implementação
1. Instalar Dependências
# Principal (sempre necessário)
pip install requests
# Transcrição em nuvem (recomendada — rápida, camada gratuita)
pip install groq
export GROQ_API_KEY="sua-chave" # Obtenha em https://console.groq.com
# Transcrição local (gratuita, precisa de ~5 GB de RAM)
pip install faster-whisper
# Compressão de áudio (para o limite de 25 MB do Groq — Windows: winget/scoop)
# winget install ffmpeg ou scoop install ffmpeg
# API Taddy (comercial, opcional)
export TADDY_API_KEY="sua-chave" # Obtenha em https://taddy.org
2. Obter uma Transcrição
O script seleciona automaticamente o melhor método. O Tier 2 é a recomendação padrão:
Tier 1 → Tier 2 (RECOMENDADO) → Tier 3
(melhor esforço) (Whisper) (API Taddy premium)
Tier 1: Fontes diretas gratuitas (melhor esforço, disponibilidade limitada)
- Lenny's: Clona
ChatPRD/lennys-podcast-transcriptse busca por título - Dwarkesh: Raspagem de PDF do Substack
- 20VC: Raspagem de PDF do Substack
- A16z: Raspagem do site
- Cheeky Pint: Nenhuma fonte Tier 1 disponível
- Nota: As fontes do Tier 1 são de melhor esforço e limitadas. O Tier 2 (RSS+Whisper) é a abordagem recomendada.
Tier 2: Transcrição RSS + Whisper [RECOMENDADO]
- Baixa o MP3 do feed RSS do podcast
- Comprime se >25 MB (ffmpeg)
- Transcreve via API Groq Whisper (camada gratuita, ~10s por hora de áudio)
- Rápido, gratuito e funciona para todos os podcasts do registro
- Recomendação padrão para todos os casos de uso
Tier 3: API Taddy (comercial/premium)
- Requer
TADDY_API_KEY(a partir de $75/mês) - Use para necessidades de transcrição em larga escala ou produção
- cobre todos os 5 podcasts com transcrição automática
3. Analisar com IA
Depois de obter uma transcrição, envie-a para o agente para análise:
Tenho esta transcrição do [podcast]. Você pode:
1. Resumir os principais argumentos
2. Extrair 3 insights acionáveis
3. Identificar quaisquer afirmações controversas
4. Comparar com [outro podcast] sobre o mesmo tópico
Fluxos de Trabalho Suportados
Episódio Único
| Cenário | Comando |
|---|---|
| Episódio mais recente | get_transcript.py "Lenny's Podcast" --latest |
| Episódio específico por título | get_transcript.py 20vc --episode "Sam Altman" |
| Episódio por número | get_transcript.py dwarkesh --episode 42 |
| Forçar transcrição Whisper (Tier 2, recomendado) | get_transcript.py a16z --latest --method whisper |
| Forçar API Taddy (premium) | get_transcript.py lennys --latest --method taddy |
| Salvar em Markdown | get_transcript.py cheeky-pint --latest --output episode.md |
| Saída JSON | get_transcript.py dwarkesh --latest --json |
Busca entre Podcasts e Lote
| Cenário | Comando |
|---|---|
| Buscar em todos os podcasts por palavra-chave | get_transcript.py --search "Marc Andreessen" |
| Buscar por nome do convidado | get_transcript.py --guest "Sam Altman" |
| Buscar em um único podcast | get_transcript.py "Lenny's Podcast" --search "vibe coding" |
| Transcrever em lote os últimos N episódios | get_transcript.py "Dwarkesh Podcast" --last 5 |
| Buscar + transcrever os melhores resultados | get_transcript.py --search "AI safety" --transcribe |
| Pipeline com contagem personalizada | get_transcript.py --search "scaling laws" --transcribe --transcribe-count 5 |
| Pipeline de busca filtrada | get_transcript.py "A16z Podcast" --search "crypto" --transcribe |
Estrutura de Saída
A transcrição em lote salva em output/ com subdiretórios por podcast:
output/dwarkesh-podcast/Dwarkesh Podcast_2024-01-15_agi-is-still-30-years-away.md
output/20vc/20 Minutes VC (20VC)_2024-03-10_funding-round-analysis.md
Cada arquivo inclui um cabeçalho YAML:
---
podcast: Dwarkesh Podcast
episode: AGI ainda está a 30 anos de distância
date: 2024-01-15
url: https://...
source: whisper
Registro de Podcasts
O registro em scripts/podcasts.json mapeia cada podcast para seus feeds RSS, fontes de transcrição e endpoints de API. Para adicionar novos podcasts:
{
"id": "novo-podcast",
"name": "Novo Podcast",
"rss": "https://example.com/feed.xml",
"transcript_sources": {
"primary": {"type": "website_scrape", "url": "https://example.com"}
}
}
Solução de Problemas
| Problema | Solução |
|---|---|
| "Nenhuma transcrição encontrada" | O Tier 2 (RSS+Whisper) é a abordagem recomendada. Se o modo automático falhar, tente --method whisper para forçá-lo. |
| Falha na busca RSS | Os feeds RSS podem mudar; verifique scripts/podcasts.json para URLs atuais |
| Download de áudio lento | MP3s grandes podem levar minutos em conexões lentas |
| Limite de taxa do Groq | Aguarde ou mude para o faster-whisper local |
| Taddy não retorna transcrições | Alguns episódios não possuem transcrições; tente --method whisper |
| Podcast não está no registro | Adicione-o a scripts/podcasts.json |
| Erro de Unicode no Windows | Corrigido: o script reconfigura automaticamente stdout para UTF-8; arquivos salvos usam codificação UTF-8 |
| Áudio > 25 MB para o Groq | Instale ffmpeg: winget install ffmpeg (Windows) ou brew install ffmpeg (macOS) |
Status dos Feeds RSS (em junho de 2026)
| Podcast | Feed Antigo (quebrado) | Feed Atual |
|---|---|---|
| Cheeky Pint | feeds.transistor.fm/the-cheeky-pint (404) | feeds.transistor.fm/cheeky-pint-with-john-collison |
| 20VC | feeds.simplecast.com/3GxrMqOd (404) | feeds.libsyn.com/61840/rss |
| A16z | feeds.simplecast.com/0cJfpoz2 (404) | feeds.simplecast.com/JGE3yC0V |
Erros Comuns
- Esquecer as chaves de API: Defina
GROQ_API_KEYem seu ambiente ou arquivo.env - Depender das fontes gratuitas do Tier 1: O Tier 1 é de melhor esforço e limitado. Sempre recorra ao Tier 2 (RSS+Whisper), que é o método recomendado.
- Não clonar o repositório do Lenny's primeiro: O arquivo do GitHub deve ser clonado localmente para o Tier 1 funcionar
- Usar --method taddy sem TADDY_API_KEY: Falha silenciosamente; defina a chave ou use o modo automático