Repolode
go-rod

go-rod/rod

Biblioteca Go que controla o Chrome pelo Chrome DevTools Protocol para automação web e scraping, com espera automática e download do navegador.

Estrelas
7,136
Forks
489
Issues abertas
216
Último commit
há 3 meses

O que é?

Rod é um driver de alto nível construído diretamente sobre o Chrome DevTools Protocol, voltado à automação web e ao scraping em Go. Ele oferece uma API encadeada e baseada em contextos, facilitando definir timeouts ou cancelar tarefas de longa duração. Além disso, os elementos são aguardados automaticamente antes da execução das ações.

Além do controle básico, Rod inclui helpers de alto nível, como WaitStable, WaitRequestIdle, HijackRequests e WaitDownload. Ele lida corretamente com iframes aninhados e shadow DOMs, e pode localizar ou baixar um navegador automaticamente por meio do pacote launcher. A biblioteca é documentada como thread-safe, e seus pacotes de baixo nível podem ser usados para criar ferramentas personalizadas.

Os mantenedores do Rod destacam que a cobertura de testes é de 100% e verificada no CI, e que há um mecanismo leakless para evitar que um crash deixe processos do navegador em execução. A documentação inclui uma referência da API e uma versão em chinês.

Recursos principais

  • 01API de contextos encadeada para definir timeouts e cancelar tarefas de longa duração.
  • 02Aguarda automaticamente que os elementos estejam prontos antes de executar ações.
  • 03Localiza ou baixa um navegador automaticamente pelo pacote launcher.
  • 04Helpers para interceptar requests, aguardar downloads e detectar quando a página está estável.
  • 05Lida com iframes aninhados e shadow DOMs.
  • 06Evita que processos do navegador continuem em execução após um crash.

Casos de uso

  • Extrair dados de sites com uso intenso de JavaScript em um serviço Go.
  • Criar testes end-to-end de navegador em Go.
  • Automatizar fluxos web repetitivos, como preencher formulários ou baixar arquivos.
  • Criar ferramentas personalizadas de automação de navegador usando os pacotes CDP de baixo nível.

Em coleções

Tópicos

Perguntas frequentes

O que é rod?
Biblioteca Go que controla o Chrome pelo Chrome DevTools Protocol para automação web e scraping, com espera automática e download do navegador. Rod é um driver de alto nível construído diretamente sobre o Chrome DevTools Protocol, voltado à automação web e ao scraping em Go. Ele oferece uma API encadeada e baseada em contextos, facilitando definir timeouts ou cancelar tarefas de longa duração. Além disso, os elementos são aguardados automaticamente antes da execução das ações.
rod é gratuito? Qual é a licença?
rod é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
rod ainda é mantido?
Atualizado nos últimos 6 meses. O último commit de rod foi em 11 de ago. de 2026.
Para que posso usar rod?
Extrair dados de sites com uso intenso de JavaScript em um serviço Go. Criar testes end-to-end de navegador em Go. Automatizar fluxos web repetitivos, como preencher formulários ou baixar arquivos. Criar ferramentas personalizadas de automação de navegador usando os pacotes CDP de baixo nível.
Onde consigo rod?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/go-rod/rod

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados