Pular para o conteúdo

Navegador headless

O que é um navegador headless, como ele é usado em capturas de tela automatizadas e quais armadilhas comuns evitar.

Um navegador headless é um navegador da web que roda sem janela visível e é controlado por código. Ele usa o mesmo mecanismo do navegador comum: interpreta o HTML, executa JavaScript, calcula o layout e renderiza pixels, mas desenha o resultado em um buffer fora da tela.

Chrome e Firefox têm modos headless. Programas os controlam por protocolos como o Chrome DevTools Protocol, o WebDriver e o WebDriver BiDi. Bibliotecas como Puppeteer, Playwright e Selenium encapsulam esses protocolos em uma API de programação.

Como nada é desenhado na tela, um navegador headless pode rodar em servidores e em pipelines de CI que não têm monitor.

Como os navegadores headless funcionam

  1. Um script inicia o navegador no modo headless.
  2. Ele abre uma página, define o tamanho da viewport e carrega uma URL.
  3. Ele espera por um evento, como o evento load ou a ausência de atividade de rede.
  4. Ele executa ações, como cliques ou rolagens, e depois solicita uma captura de tela ou um PDF.
  5. Ele fecha a página ou o navegador.

Onde os navegadores headless são usados

  • Testes automatizados que verificam páginas e fluxos.
  • Capturas de tela agendadas para monitoramento e arquivamento.
  • Geração de PDFs e imagens de pré-visualização para redes sociais a partir de HTML.
  • Coleta de dados públicos de páginas que dependem de JavaScript para renderizar.

Captura headless ou com janela

HeadlessCom janela visível
Monitor necessárioNãoSim
Velocidade em lotesGeralmente mais rápidaMais lenta
DepuraçãoMais difícil, não há nada para observarMais fácil
Detecção por sitesMais provávelMenos provável

Alguns sites detectam navegadores headless e servem conteúdo diferente ou os bloqueiam. Fontes e recursos de GPU também podem diferir de um navegador de desktop, então a mesma página pode renderizar de forma levemente diferente.

Erros comuns

  • Capturar no evento load em páginas que continuam carregando conteúdo.
  • Esquecer de definir a viewport, então todas as capturas usam um tamanho padrão.
  • Executar muitos navegadores ao mesmo tempo em uma máquina pequena.
  • Fontes ausentes em servidores, o que altera a disposição do texto.

Repetindo as mesmas capturas o tempo todo?

O Website Capture do Temposhot carrega URLs em navegadores locais gerenciados no seu Mac, sem código, com de 1 a 10 Concurrent browsers. Veja automação de capturas de tela de sites.

Perguntas frequentes

Preciso escrever código para usar um navegador headless?

Bibliotecas como Puppeteer e Playwright exigem código. Ferramentas de desktop e serviços de captura de tela escondem essa camada.

Uma captura headless é idêntica a uma captura comum?

Muitas vezes é bem parecida, mas fontes, renderização por GPU e o comportamento do site podem diferir.

Fontes

Recursos relacionados

Você tira as mesmas capturas de tela várias vezes?

O Temposhot captura uma tela, janela ou área em intervalos programados e exporta o conjunto como PDF, imagens, ZIP ou MP4. As ferramentas gratuitas do navegador capturam apenas uma imagem por vez.

Recursos relacionados

Termos relacionados

Todos os termos do glossário