Zum Inhalt springen

Headless-Browser

Was ein Headless-Browser ist, wie er für automatisierte Screenshots eingesetzt wird und welche Stolperfallen es gibt.

Ein Headless-Browser ist ein Webbrowser, der ohne sichtbares Fenster läuft und per Code gesteuert wird. Er nutzt dieselbe Engine wie der normale Browser: Er parst HTML, führt JavaScript aus, berechnet das Layout und rendert Pixel, zeichnet sie aber in einen Puffer außerhalb des Bildschirms.

Chrome und Firefox haben beide einen Headless-Modus. Programme steuern sie über Protokolle wie das Chrome DevTools Protocol, WebDriver und WebDriver BiDi. Bibliotheken wie Puppeteer, Playwright und Selenium kapseln diese Protokolle in einer Programmierschnittstelle.

Da nichts auf dem Bildschirm gezeichnet wird, kann ein Headless-Browser auf Servern und in CI-Pipelines ohne Display laufen.

So funktionieren Headless-Browser

  1. Ein Skript startet den Browser im Headless-Modus.
  2. Es öffnet eine Seite, legt die Viewport-Größe fest und lädt eine URL.
  3. Es wartet auf ein Ereignis, etwa das load-Ereignis oder keine Netzwerkaktivität mehr.
  4. Es führt Aktionen wie Klicks oder Scrollen aus und fordert dann einen Screenshot oder ein PDF an.
  5. Es schließt die Seite oder den Browser.

Wo Headless-Browser eingesetzt werden

  • Bei automatisierten Tests, die Seiten und Abläufe prüfen.
  • Bei geplanten Screenshots für Monitoring und Archivierung.
  • Zum Erzeugen von PDFs und Social-Media-Vorschaubildern aus HTML.
  • Zum Sammeln öffentlicher Daten von Seiten, die JavaScript zum Rendern benötigen.

Headless- und Headed-Aufnahme im Vergleich

HeadlessHeaded (sichtbares Fenster)
Display erforderlichNeinJa
Geschwindigkeit bei StapelnMeist schnellerLangsamer
FehlersucheSchwieriger, nichts zu beobachtenEinfacher
Erkennung durch WebsitesWahrscheinlicherWeniger wahrscheinlich

Manche Websites erkennen Headless-Browser und liefern andere Inhalte aus oder blockieren sie. Auch Schriften und GPU-Funktionen können sich von einem Desktop-Browser unterscheiden, sodass dieselbe Seite leicht anders gerendert wird.

Häufige Fehler

  • Beim load-Ereignis aufnehmen, obwohl die Seite weiter Inhalte nachlädt.
  • Den Viewport nicht festlegen, sodass jede Aufnahme eine Standardgröße verwendet.
  • Viele Browser gleichzeitig auf einem schwachen Rechner ausführen.
  • Fehlende Schriften auf Servern, die das Textlayout verändern.

Immer wieder dieselben Screenshots?

Temposhot Website Capture lädt URLs ohne Code in verwalteten lokalen Browsern auf Ihrem Mac, mit 1 bis 10 Concurrent browsers. Mehr dazu unter Website-Screenshot-Automatisierung.

Häufige Fragen

Muss ich für einen Headless-Browser Code schreiben?

Bibliotheken wie Puppeteer und Playwright erfordern Code. Desktop-Tools und Screenshot-Dienste verbergen diese Ebene.

Ist ein Headless-Screenshot mit einem normalen identisch?

Oft sehr ähnlich, doch Schriften, GPU-Rendering und das Verhalten der Website können abweichen.

Quellen

Weiterführende Ressourcen

Machen Sie immer wieder dieselben Screenshots?

Temposhot erfasst einen Bildschirm, ein Fenster oder einen Bereich zeitgesteuert und exportiert die Serie als PDF, Bilder, ZIP oder MP4. Kostenlose Browser-Tools erstellen nur einzelne Bilder.

Verwandte Ressourcen

Verwandte Begriffe

Alle Glossarbegriffe