Ir al contenido

Análisis de Competencia — Descargar Transcripciones

Análisis de Competencia — Transcripciones

Sección titulada «Análisis de Competencia — Transcripciones»

yt/scripts/competitor_scraper.py — descarga título, descripción, subtítulos y miniatura de cualquier video/canal/playlist de YouTube.

El problema: YouTube bloquea sin autenticación

Sección titulada «El problema: YouTube bloquea sin autenticación»

YouTube pide autenticación para descargar subtítulos. La solución es pasar cookies del browser.

Lo que funciona: Safari cookies Lo que NO funciona: Chrome (JS challenge sin deno), Firefox (no instalado)

Descargar subtítulos de un video (método directo — el que funciona)

Sección titulada «Descargar subtítulos de un video (método directo — el que funciona)»
yt-dlp --cookies-from-browser safari \
--skip-download \
--write-auto-sub \
--sub-lang en \
--sub-format vtt \
-o "/tmp/competencia/%(id)s.%(ext)s" \
"https://www.youtube.com/watch?v=VIDEO_ID"

Para español:

yt-dlp --cookies-from-browser safari \
--skip-download \
--write-auto-sub \
--sub-lang es \
--sub-format vtt \
-o "/tmp/competencia/%(id)s.%(ext)s" \
"https://www.youtube.com/watch?v=VIDEO_ID"
python3 -c "
import re
with open('/tmp/competencia/VIDEO_ID.en.vtt', 'r') as f:
content = f.read()
lines = content.split('\n')
result = []
prev = ''
for line in lines:
line = line.strip()
if not line or line == 'WEBVTT' or '-->' in line or re.match(r'^\d+$', line):
continue
line = re.sub(r'<[^>]+>', '', line)
if line and line != prev:
result.append(line)
prev = line
print('\n'.join(result))
"

Usando el scraper completo (CSV + subs + miniatura)

Sección titulada «Usando el scraper completo (CSV + subs + miniatura)»
cd /Users/nicolasneiragarcia/NICOLASNEIRA/yt
# Un video
python3 scripts/competitor_scraper.py "URL" --out /tmp/competencia --langs en
# Varios videos
python3 scripts/competitor_scraper.py "URL1" "URL2" "URL3" --out /tmp/competencia --langs en
# Canal completo
python3 scripts/competitor_scraper.py "https://www.youtube.com/@canal" --out /tmp/competencia --langs es,en

⚠️ El scraper no soporta --cookies-from-browser. Para videos bloqueados usar yt-dlp directo (ver arriba).

pip install yt-dlp pandas
  1. Buscar competencia con mcp__youtube__youtube_search (100 quota/búsqueda)
  2. Ver métricas con mcp__youtube__youtube_get_video (views, likes, duración)
  3. Descargar transcripción con yt-dlp --cookies-from-browser safari
  4. Leer y analizar el contenido
  5. Documentar gaps en brain/src/content/docs/canal/proximos-videos.md

lZO3rsLkvAI — “Segundo cerebro con Claude Code” (Mar 2026)

Sección titulada «lZO3rsLkvAI — “Segundo cerebro con Claude Code” (Mar 2026)»
  • Canal: Bistral/Victor (agencias digitales en español)
  • Vistas: ~18K en 13 días
  • Conclusión: Target completamente distinto (dueños de agencias, no ingenieros). Su “segundo cerebro” = un archivo CLAUDE.md en Obsidian. Sin MCP, sin infraestructura real. El gap con nuestra propuesta es enorme.