Wydano wersję 23 biblioteki JavaScript Puppeteer, przeznaczonej do automatyzacji zarządzania przeglądarkami internetowymi. Biblioteka nadaje się zarówno do automatycznego wykonywania typowych operacji w przeglądarce, jak i do przeprowadzania testów przeglądarek oraz symulacji pracy użytkowników. Kod projektu został napisany w języku TypeScript z użyciem Node.js i jest rozpowszechniany na licencji Apache 2.0.
Na przykład Puppeteer pozwala na stworzenie skryptu, który uruchamia przeglądarkę, ustawia odpowiedni rozmiar okna, otwiera określoną stronę, przeskakuje do wybranego pola wyszukiwania, wprowadza dane w to pole i wysyła zapytanie, a następnie przechodzi do linku pierwszego wyniku na liście i zapisuje otrzymaną stronę. Biblioteka zapewnia również możliwość pobrania najnowszej wersji wybranej przeglądarki, symulacji pracy na wybranym urządzeniu (na przykład na smartfonie Pixel 5) oraz obsługi formularzy autoryzacyjnych. W trakcie działania można śledzić, przechwytywać, modyfikować lub blokować żądania i odpowiedzi sieciowe, a także manipulować nagłówkami HTTP i wykonywać własne skrypty w kontekście otwieranych stron.
Wydanie Puppeteer 23 jest szczególne, ponieważ zapewnia wsparcie dla przeglądarki Firefox, oprócz pierwotnie wspieranych przeglądarek opartych na silniku Chromium (projekt Puppeteer rozwija zespół Chrome Browser Automation). Do interakcji z przeglądarkami wspierane są protokoły CDP (Chrome DevTools Protocol) oraz WebDriver BiDi. Domyślnie przeglądarki uruchamiane są w trybie bezgłowym (headless). Należy zauważyć, że wprowadzenie wsparcia dla Firefox i WebDriver BiDi w nowej wersji pozwala na użycie Puppeteer jako uniwersalnego narzędzia do automatyzacji testowania aplikacji webowych w różnych przeglądarkach.
Źródło: opennet.ru
