Descargar la versión anterior de Headless Chrome como chrome-headless-shell

A principios de este año, anunciamos la disponibilidad del nuevo modo sin interfaz gráfica de Chrome (--headless=new) en Chrome 112. Este modo permite que los desarrolladores ejecuten Chrome en un entorno sin actividad y sin ninguna IU visible, lo que resulta útil para casos de uso de pruebas y automatización.

Como parte de este anuncio, mencionamos nuestros planes para quitar el modo sin interfaz gráfica del objeto binario de Chrome. Esta eliminación tiene sentido, ya que el navegador Headless anterior, técnicamente, es un navegador independiente, lo que significa que estamos enviando dos objetos binarios del navegador en uno. Al mismo tiempo, reconocemos que existen casos de uso distintos para el modo anterior y el nuevo modo sin interfaz gráfica:

  1. El antiguo modo sin interfaz gráfica es un wrapper ligero alrededor del módulo //content de Chromium y, por lo tanto, tiene muchas menos dependencias. En concreto, no requiere X11/Wayland ni D-Bus y, de alguna manera, es más eficaz que el completo navegador Chrome. Esto lo hace adecuado para casos de uso como la captura automática de pantalla o el scraping web.
  2. El nuevo Headless, por otro lado, es el verdadero navegador Chrome y, por lo tanto, es más auténtico, confiable y ofrece más funciones. Esto lo hace más adecuado para pruebas de aplicaciones web de alta precisión de extremo a extremo o pruebas de extensiones del navegador.

En otras palabras, existe un equilibrio entre rendimiento y autenticidad. ¿Qué modo sin interfaz gráfica es el más adecuado para ti? Depende de tu caso de uso.

Diagrama que ilustra la información proporcionada en la lista anterior.

Es posible que los desarrolladores y verificadores que no requieran todas las funciones de Chrome para sus casos de uso de automatización puedan usar la versión anterior sin interfaz gráfica. De lo contrario, es probable que el nuevo Headless sea la mejor opción.

Para garantizar que los desarrolladores y verificadores sigan teniendo la opción de elegir entre estas dos opciones, nos complace anunciar que la implementación anterior de Headless ya está disponible como un objeto binario chrome-headless-shell independiente. Estos nuevos objetos binarios chrome-headless-shell se generan para cada versión de Chrome para el usuario y se pueden descargar a través de la infraestructura de Chrome for Testing a partir de Chrome 120.

¿Cómo puedo obtener los objetos binarios de chrome-headless-shell?

Al igual que con otros objetos binarios de Chrome for Testing, la forma más fácil de descargar chrome-headless-shell para tu plataforma es usar nuestra utilidad de línea de comandos @puppeteer/browsers, disponible con npm. Estos son algunos ejemplos:

# 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

Si prefieres compilar tus propias secuencias de comandos automatizadas para descargar objetos binarios de chrome-headless-shell, podemos ayudarte. Chrome for Testing ofrece extremos de la API de JSON con las versiones más recientes disponibles por canal de versiones de Chrome (estable, beta, para desarrolladores y de versiones canary). Para obtener una descripción general rápida del estado más reciente, consulta el panel de disponibilidad de Chrome for Testing.

Comentarios

Esperamos recibir tus comentarios sobre chrome-headless-shell. Si tienes algún problema, infórmalo.