Browser-Skripting mit Puppeteer

in  Verschiedenes , , ,

Browser-Skripting mit Puppeteer

Wenn es darum geht, Arbeiten mit einem Browser zu automatisieren, dann kommt man mit sogenannten Headless Browsern in Berührung. Hierbei geht es darum, die Fähigkeiten eines Browsers nicht mit Maus und Tastatur zu nutzen, sondern die Bedienung mit Skripten fernzusteuern. In diesem Bereich gab es längere Zeit nur wenig mächtige Alternativen. Mit PhantomJS haben wir den de-facto Standard verwendet. Dieser wird nun allerdings nicht mehr weiterentwickelt und so wurde es Zeit für etwas Neues.

Mittlerweile gibt es eine ganze Reihe von Softwareprojekten zur Steuerung von Browsern ohne UI. Wir haben nun auf das von Google bereitgestellte Puppeteer umgestellt. Dies ist eine API für den Browser Headless Chrome bzw. Headless Chromium. Eine Einführung hierfür lässt sich hier anschauen.

Nach einer kurzen Eingewöhnung in NodeJS und die Puppeteer Funktionen lässt sich sagen, dass die Arbeit mit diesem Tool mehr als intuitiv abläuft. Darüber hinaus scheint es auch weniger Ressourcen in Anspruch zu nehmen als PhantomJS. Der größte Vorteil liegt allerdings darin, dass nun wesentlich neuere Chrome-Versionen eingesetzt werden können. Dies ist insbesondere beim automatischen Erstellen von Screenshots hilfreich, wenn die zu Grunde liegende Seite neuere Technologien einsetzt.

Weitere Beiträge in Kategorie Verschiedenes

Shopware 6: Korrektur für Links zu rechtlichen Angaben
- In der aktuellen Version von Shopware 6 gibt es einen Bug, der dafür sorgt, dass die Links zu den Datenschutzbestimmungen und den allgemeinen Geschäftsbedingungen im Registrierungsformular nicht …
Vom Teilen und Herrschen: Wie groß sollten Module sein?
- Soeben bin ich über einen Artikel auf Heise gestolpert, der aus meiner Sicht ein paar spannende Impulse setzt: Richtig klein: Hat Modularisierung versagt?. Der Autor beginnt mit klassischen …
Endlich in der GitHub Issues Beta
- Seit knapp eineinhalb Jahren nutzen wir MeisterTask für unser persönliches Task Management im Rahmen von Kundenprojekten sowie eigenen Vorhaben - und sind immer noch begeistert von diesem Tool 😍 Alle …
Symfony 5.4: MicroKernel lernt gängige Konfiguration
- In der kommenden Symfony-Version 5.4 wird häufig wiederkehrender Code zur Kernel-Konfiguration in den MicroKernelTrait verlagert. Dies führt dazu, dass der individuelle Kernel einer Anwendung (in der …
Problem mit zirkulären Abhängigkeiten durch Dekoratoren in Symfony 5.3.7
- Symfony erlaubt das Dekorieren von Services: hierbei wird im Gegensatz zum Überschreiben bestehender Services eine Ummantelung derselben vorgenommen. Immer dann, wenn der ursprüngliche Service …