Files
navegator/examples/README_youtube_comments.md
Developer 3253828fef
Tests / Lint (push) Has been cancelled
Tests / Unit Tests (push) Has been cancelled
Tests / E2E Tests (push) Has been cancelled
Tests / Integration Tests (push) Has been cancelled
Initial commit: navegator - Chrome CDP automation for LLMs
Add complete navegator system for stealthy browser automation:
- CDP client with WebSocket communication
- Browser API with navigation, storage, network, runtime
- Stealth flags and anti-detection scripts
- Persistent profile support
- Examples and comprehensive documentation

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-03-24 23:33:07 +01:00

4.8 KiB

YouTube Comments Scraper

Ejemplo de uso de navegator para extraer comentarios de videos de YouTube de manera sigilosa.

Características

  • Extracción de comentarios con autor, texto y likes
  • Modo headless para producción
  • Ventana pequeña para desarrollo/testing
  • Manejo automático de banner de cookies
  • Scroll automático para activar lazy loading
  • Stealth flags para evitar detección
  • Perfiles persistentes (cookies y sesiones se mantienen)

Uso

Modo básico (headless por defecto)

go run examples/youtube_comments.go

Modo visible (para debugging)

go run examples/youtube_comments.go -visible

Especificar video y número de comentarios

go run examples/youtube_comments.go -url "https://www.youtube.com/watch?v=VIDEO_ID" -n 20

Todas las opciones

go run examples/youtube_comments.go -visible -url "URL_DEL_VIDEO" -n 15

Parámetros

Flag Descripción Default
-visible Ejecutar con interfaz gráfica (para debugging) false (headless)
-url URL del video de YouTube Video de ejemplo
-n Número máximo de comentarios a extraer 10

Compilar binario

Para crear un binario standalone:

go build -o youtube-comments examples/youtube_comments.go

Luego usar:

# Modo headless (default)
./youtube-comments -n 20

# Modo visible para debugging
./youtube-comments -visible -n 20

Ejemplo de salida

🚀 Lanzando navegador...
✅ Navegador iniciado. Perfil: /home/user/.navegator/profiles/youtube-scraper
📺 Navegando a YouTube: https://www.youtube.com/watch?v=S1J8rx2Jw98
📊 Extrayendo hasta 5 comentarios
⏳ Esperando a que cargue la página...
🍪 Cookie banner clicked
📜 Haciendo scroll para cargar comentarios...
⏳ Esperando a que aparezcan los comentarios...
📝 Extrayendo comentarios...

================================================================================
📋 COMENTARIOS EXTRAÍDOS:
================================================================================

1. @herrpez (1K likes)
   Insane move. Guy is clearly flying that route in August...

2. @roland_does_things (336 likes)
   This is the moment you treat all your friends to a great trip to Sicily...

3. @Starcraft2Krauts (440 likes)
   Getting money from Wizz air took me months and threatening a lawsuit...

================================================================================
📌 Información del Video:
================================================================================
Título: I Tried to Profit From Flight Delays Using Data
Vistas: 43,845 views

✅ Extracción completada exitosamente!

Cómo funciona

  1. Lanzamiento del navegador: Inicia Chrome/Chromium con flags stealth
  2. Navegación: Carga el video de YouTube especificado
  3. Cookies: Detecta y acepta automáticamente el banner de cookies
  4. Scroll: Hace scroll progresivo para activar el lazy loading de comentarios
  5. Extracción: Usa JavaScript para extraer los datos de cada comentario
  6. Formato: Muestra los comentarios de manera legible en la terminal

Selectores utilizados

El script utiliza los siguientes selectores CSS de YouTube:

  • ytd-comment-thread-renderer: Contenedor de cada comentario
  • #author-text: Nombre del autor
  • #content-text: Texto del comentario
  • .published-time-text a: Fecha de publicación
  • #vote-count-middle: Contador de likes

Notas

  • Perfiles persistentes: El navegador guarda cookies y sesiones en ~/.navegator/profiles/youtube-scraper/
  • Timeouts: Si la página tarda mucho en cargar, aparecerá una advertencia pero continuará la ejecución
  • Stealth: El navegador se configura con flags anti-detección para evitar ser bloqueado
  • Ventana pequeña: Se usa ventana de 600x400 para menor consumo de recursos
  • Headless por defecto: El navegador corre en segundo plano sin interfaz gráfica (usa -visible para debugging)

Troubleshooting

No se encuentran comentarios

  • Verifica que el video tenga comentarios habilitados
  • Aumenta el tiempo de espera modificando los time.Sleep()
  • Ejecuta con -visible para ver qué está pasando en el navegador

Timeout al navegar

  • Es normal, el script continúa de todos modos
  • YouTube carga muchos recursos en segundo plano
  • La advertencia no afecta la extracción de comentarios

Selectores no funcionan

  • YouTube puede cambiar su estructura HTML
  • Ejecuta con -visible e inspecciona la página
  • Actualiza los selectores en el script según sea necesario

Próximas mejoras

  • Exportar comentarios a JSON
  • Extraer respuestas a comentarios
  • Ordenar por fecha, likes, etc.
  • Extraer información adicional (avatares, badges, etc.)
  • Scroll infinito para extraer todos los comentarios