Na początku roku ogłosiliśmy dostępność nowego trybu bez interfejsu graficznego (--headless=new
) w Chrome 112. Ten tryb umożliwia programistom uruchamianie Chrome w środowisku porzuconym bez widocznego interfejsu użytkownika. Jest to przydatne w przypadkach użycia związanych z testowaniem i automatyzacją.
W ramach tego ogłoszenia wspomnieliśmy o naszych planach usunięcia z pliku binarnego Chrome starego trybu bez interfejsu graficznego. Usunięcie ma sens, ponieważ stary nagłówek bez interfejsu graficznego jest z technicznego punktu widzenia oddzielną przeglądarką, co oznacza, że obecnie udostępniamy 2 pliki binarne przeglądarki. Jednocześnie zdajemy sobie sprawę, że istnieją różne przypadki użycia dla starego i nowego trybu bez interfejsu graficznego:
- Stary tryb bez interfejsu graficznego stanowi lekkie otoczenie modułu
//content
w Chromium, dzięki czemu udostępnia on znacznie mniej zależności. Nie wymaga ona X11/Wayland czy D-Bus, a ponadto jest pod pewnymi względami wydajniejsza niż w pełni wyposażona przeglądarka Chrome. Dzięki temu jest ona odpowiednia do takich zastosowań jak automatyczne robienie zrzutów ekranu czy kopiowanie stron internetowych. - Nowy interfejs Headless to natomiast prawdziwa przeglądarka Chrome, dzięki czemu jest bardziej autentyczna, niezawodna i oferuje więcej funkcji. Dzięki temu jest on bardziej przydatny do kompleksowych testów aplikacji internetowych o wysokiej dokładności lub do testowania rozszerzeń przeglądarki.
Oznacza to kompromis między skutecznością a autentycznością. Który tryb bez interfejsu graficznego najbardziej Ci odpowiada? To zależy od konkretnego przypadku użycia.
Deweloperzy i testerzy, którzy do obsługi automatyzacji nie potrzebują w pełni funkcji Chrome, mogą zdecydować się na użycie starszej wersji interfejsu bez interfejsu graficznego. W przeciwnym razie najlepszym wyborem będzie prawdopodobnie nowa wersja bez interfejsu graficznego.
Aby mieć pewność, że deweloperzy i testerzy nadal będą mieli wybór między tymi 2 opcjami, z przyjemnością informujemy, że stara implementacja bez interfejsu graficznego jest teraz dostępna jako samodzielny plik binarny chrome-headless-shell
. Te nowe pliki binarne chrome-headless-shell
są generowane dla każdej wersji Chrome dla użytkowników i można je pobrać za pomocą infrastruktury Chrome for Testing, począwszy od Chrome 120.
Jak pobrać pliki binarne chrome-headless-shell
?
Podobnie jak w przypadku innych plików binarnych Chrome for Testing, najprostszym sposobem pobrania chrome-headless-shell
na swoją platformę jest skorzystanie z naszego narzędzia wiersza poleceń @puppeteer/browsers
dostępnego przy użyciu npm
. Oto przykłady:
# 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
Jeśli wolisz tworzyć własne automatyczne skrypty do pobierania plików binarnych chrome-headless-shell
, mamy coś dla Ciebie. Chrome for Testing oferuje punkty końcowe interfejsu JSON API z najnowszymi wersjami w każdym kanale wersji Chrome (stabilnym, beta, deweloperskim i Canary). Krótkie omówienie najnowszego stanu znajdziesz w panelu dostępności Chrome for Testing.
Prześlij opinię
Czekamy na Twoją opinię o chrome-headless-shell
. Jeśli napotkasz jakieś problemy, zgłoś je.