Fazer o download do antigo Headless Chrome como chrome-headless-shell

No início deste ano, anunciamos a disponibilidade do novo modo headless (--headless=new) do Chrome no Chrome 112. Esse modo permite que os desenvolvedores executem o Chrome em um ambiente autônomo sem nenhuma interface visível, o que é útil para testes e casos de uso de automação.

Como parte desse anúncio, mencionamos nossos planos de remover o antigo modo headless do binário do Chrome. Essa remoção faz sentido, já que o antigo Headless é tecnicamente um navegador separado, ou seja, estamos enviando dois binários de navegador em um. Ao mesmo tempo, reconhecemos que há casos de uso diferentes para o antigo e o novo modo headless:

  1. O antigo modo headless é um wrapper leve em torno do módulo //content do Chromium e, portanto, tem muito menos dependências. Especificamente, ele não exige X11/Wayland, D-Bus e, em alguns aspectos, é mais eficiente do que o navegador Chrome completo. Por isso, ele é adequado para casos de uso como captura de tela automática ou cópia na Web.
  2. O novo Headless, por outro lado, é o navegador Chrome real e, portanto, é mais autêntico, confiável e oferece mais recursos. Por isso, ele é mais adequado para testes de alta precisão com apps da Web completos ou de extensões do navegador.

Em outras palavras, há um equilíbrio entre desempenho e autenticidade. Qual modo headless é mais adequado para você? Depende do seu caso de uso.

Um diagrama que ilustra as informações fornecidas na lista anterior.

Os desenvolvedores e testadores que não precisam da funcionalidade completa do Chrome para casos de uso de automação podem usar o headless antigo. Caso contrário, o novo Headless é provavelmente a melhor escolha.

Para garantir que os desenvolvedores e testadores continuem a escolher entre essas duas opções, é um prazer anunciar que a antiga implementação headless agora está disponível como um binário chrome-headless-shell independente. Esses novos binários chrome-headless-shell são gerados para cada versão do Chrome voltada ao usuário e estão disponíveis para download por meio da infraestrutura do Chrome for Testing, a partir do Chrome 120.

Como posso receber binários do chrome-headless-shell?

Assim como acontece com outros binários do Chrome for Testing, a maneira mais fácil de fazer o download do chrome-headless-shell para sua plataforma é usar nosso utilitário de linha de comando @puppeteer/browsers, disponível em npm. Confira alguns exemplos:

# Download the latest available `chrome-headless-shell` binary corresponding to the Stable channel.
npx @puppeteer/browsers install chrome-headless-shell@stable

# Download a specific `chrome-headless-shell` version.
npx @puppeteer/browsers install chrome-headless-shell@120.0.6098.0

Se preferir criar seus próprios scripts automatizados para fazer o download de binários do chrome-headless-shell, podemos ajudar. O Chrome for Testing oferece endpoints de API JSON com as versões mais recentes disponíveis por canal de lançamento do Google Chrome (Stable, Beta, Dev e Canary). Para ter uma visão geral rápida do status mais recente, consulte o painel de disponibilidade do Chrome for Testing.

Feedback

Esperamos receber seu feedback sobre chrome-headless-shell. Se você tiver algum problema, informe aqui.