Загрузите старую версию Headless Chrome как chrome-headless-shell.

Ранее в этом году мы объявили о доступности нового режима Chrome Headless ( --headless=new ) в Chrome 112. Этот режим позволяет разработчикам запускать Chrome в автоматической среде без какого-либо видимого пользовательского интерфейса, что полезно для тестирования и автоматизации сценариев использования.

В рамках этого объявления мы упомянули о наших планах удалить старый режим Headless из двоичного файла Chrome. Это удаление имеет смысл, поскольку старый Headless технически является отдельным браузером, а это означает, что в настоящее время мы поставляем два двоичных файла браузера в одном. В то же время мы признаем, что существуют разные варианты использования старого и нового режимов Headless:

  1. Старый режим Headless представляет собой облегченную оболочку модуля //content Chromium и, следовательно, имеет значительно меньше зависимостей. В частности, он не требует X11/Wayland, D-Bus и в некотором смысле более эффективен, чем полноценный браузер Chrome. Это делает его подходящим для таких случаев использования, как автоматическое создание снимков экрана или очистка веб-страниц.
  2. С другой стороны, новый Headless — это настоящий браузер Chrome, поэтому он более аутентичен, надежен и предлагает больше возможностей. Это делает его более подходящим для высокоточного сквозного тестирования веб-приложений или тестирования расширений браузера.

Другими словами, существует компромисс между производительностью и аутентичностью. Какой безголовый режим вам больше всего подходит? Это зависит от вашего варианта использования.

Диаграмма, иллюстрирующая информацию, приведенную в предыдущем списке.

Разработчики и тестировщики, которым не требуется полная функциональность Chrome для задач автоматизации, могут захотеть использовать старую версию Headless. В противном случае новый Headless, вероятно, будет лучшим выбором.

Чтобы у разработчиков и тестировщиков по-прежнему был выбор между этими двумя вариантами, мы рады сообщить, что старая реализация Headless теперь доступна в виде автономного двоичного файла chrome-headless-shell . Эти новые двоичные файлы chrome-headless-shell создаются для каждой пользовательской версии Chrome и доступны для загрузки через инфраструктуру Chrome для тестирования, начиная с Chrome 120.

Как я могу получить двоичные файлы chrome-headless-shell ?

Как и в случае с другими двоичными файлами Chrome для тестирования, самый простой способ загрузить chrome-headless-shell для вашей платформы — использовать нашу утилиту командной строки @puppeteer/browsers , доступную с помощью npm . Вот некоторые примеры:

# 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

Если вы предпочитаете создавать свои собственные автоматизированные сценарии для загрузки двоичных файлов chrome-headless-shell , мы вам поможем. Chrome для тестирования предлагает конечные точки JSON API с последними доступными версиями для каждого канала выпуска Chrome (стабильная, бета-версия, версия для разработчиков и Canary). Чтобы получить краткий обзор последнего статуса, обратитесь к информационной панели доступности Chrome для тестирования .

Обратная связь

Мы с нетерпением ждем ваших отзывов о chrome-headless-shell . Если у вас возникнут какие-либо проблемы, сообщите о них .