Repolode
go-rod

go-rod/rod

Biblioteca de Go que controla Chrome mediante el protocolo DevTools para automatizar la web y extraer datos, con espera automática y descarga del navegador.

Estrellas
7,136
Forks
489
Issues abiertos
216
Último commit
hace 3 meses

¿Qué es?

Rod es un driver de alto nivel basado directamente en Chrome DevTools Protocol, orientado a la automatización web y la extracción de datos con Go. Ofrece una API encadenable basada en contextos para establecer tiempos de espera o cancelar fácilmente tareas de larga duración, y espera automáticamente a que los elementos estén listos antes de ejecutar acciones.

Además del control básico, Rod incluye helpers de nivel superior como WaitStable, WaitRequestIdle, HijackRequests y WaitDownload. Puede gestionar correctamente iframes anidados y shadow DOMs, y buscar o descargar un navegador automáticamente mediante su paquete launcher. La biblioteca está documentada como segura para su uso concurrente, y sus paquetes de bajo nivel pueden utilizarse para crear herramientas personalizadas.

Los mantenedores de Rod destacan que CI exige una cobertura de pruebas del 100 %, y que se utiliza un mecanismo leakless para evitar que queden procesos del navegador en ejecución si se produce un crash. Se ofrecen documentación, una referencia de la API y documentación de la API en chino.

Funciones clave

  • 01API de contextos encadenable para establecer tiempos de espera y cancelar tareas de larga duración.
  • 02Espera automáticamente a que los elementos estén listos antes de interactuar con ellos.
  • 03Busca o descarga un navegador automáticamente mediante el paquete launcher.
  • 04Helpers para interceptar solicitudes, esperar descargas y detectar cuándo una página está estable.
  • 05Gestiona iframes anidados y shadow DOMs.
  • 06Evita que queden procesos del navegador en ejecución tras un crash.

Casos de uso

  • Extraer datos de sitios web con mucho JavaScript desde un servicio escrito en Go.
  • Escribir pruebas end-to-end de navegador con Go.
  • Automatizar tareas web repetitivas, como rellenar formularios o descargar archivos.
  • Crear herramientas personalizadas de automatización del navegador sobre los paquetes CDP de bajo nivel.

En colecciones

Temas

Preguntas frecuentes

¿Qué es rod?
Biblioteca de Go que controla Chrome mediante el protocolo DevTools para automatizar la web y extraer datos, con espera automática y descarga del navegador. Rod es un driver de alto nivel basado directamente en Chrome DevTools Protocol, orientado a la automatización web y la extracción de datos con Go. Ofrece una API encadenable basada en contextos para establecer tiempos de espera o cancelar fácilmente tareas de larga duración, y espera automáticamente a que los elementos estén listos antes de ejecutar acciones.
¿rod es gratuito? ¿Qué licencia tiene?
rod es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿rod sigue mantenido?
Actualizado en los últimos 6 meses. El último commit de rod fue el 11 ago 2026.
¿Para qué puedo usar rod?
Extraer datos de sitios web con mucho JavaScript desde un servicio escrito en Go. Escribir pruebas end-to-end de navegador con Go. Automatizar tareas web repetitivas, como rellenar formularios o descargar archivos. Crear herramientas personalizadas de automatización del navegador sobre los paquetes CDP de bajo nivel.
¿Dónde consigo rod?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/go-rod/rod

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados