Zum Inhalt springen
Extraktions-Tools

Screenshot einer Website aus einem echten Browser in der EU

Adresse eingeben, Viewport oder ganze Seite wählen, JPEG oder PNG. Ein frischer Browser auf EU-Hardware lädt die Seite, lehnt das Cookie-Banner über den Consent-Autopiloten ab, wartet, bis sie zur Ruhe kommt, und liefert das Bild. Der API-Aufruf, der es erzeugt hat, steht daneben.

Öffentliche URL eingeben; Format, ganze Seite oder Viewport und eine Gerätevorgabe wählen.

Diese Prüfung öffnet einen echten Browser auf unseren Servern und braucht JavaScript in deinem.

Beobachtungen, keine Urteile. Deine Eingabe wird für dieses Ergebnis verarbeitet und in ein Nutzungsjournal geschrieben, das die Datenschutzerklärung beschreibt; sonst wird nichts gespeichert.

Die Screenshot-API

Eine Session, ein Aufruf, ein Bild. Die Antwort enthält das Bild als Base64 mit Breite und Höhe und die Angabe, ob ein Consent-Banner weggeklickt wurde.

# 1. Session öffnen
SESSION=$(curl -s -X POST https://browserberg.com/v1/sessions \
  -H "Authorization: Bearer $BROWSERBERG_API_KEY" \
  -H 'Content-Type: application/json' -d '{}' | jq -r .session.id)

# 2. Screenshot (Banner zuerst abgelehnt, ganze Seite, PNG)
curl -s -X POST https://browserberg.com/v1/sessions/$SESSION/screenshot \
  -H "Authorization: Bearer $BROWSERBERG_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{ "url": "https://www.beispiel.de/", "format": "png", "fullPage": true, "consent": "reject" }' \
  | jq -r .base64 | base64 -d > seite.png

# 3. Session freigeben
curl -s -X DELETE https://browserberg.com/v1/sessions/$SESSION \
  -H "Authorization: Bearer $BROWSERBERG_API_KEY"

Eine Screenshot-API, die erst das Banner ablehnt

Die meisten Screenshot-Dienste liefern ein Bild vom Cookie-Banner. Gewollt war die Seite darunter, und weil das Banner das Erste ist, was jeder Besucher aus Europa sieht, muss ein ehrlicher Screenshot es beantworten, bevor er hinschaut. Browserberg-Sessions tragen einen Consent-Autopiloten, der die gängigen Consent-Tools an ihrem eigenen Markup erkennt, den Ablehnen-Knopf drückt wie ein Mensch und prüft, dass der Dialog weg ist, bevor die Seite gelesen wird. Der Screenshot-Aufruf nutzt denselben Mechanismus: consent steht standardmäßig auf reject, lässt sich auf accept setzen, wenn du die Seite so brauchst, wie ein einwilligender Besucher sie sieht, oder auf off, wenn das Banner das ist, was du dokumentierst.

Was du bekommst

Ein JPEG in wählbarer Qualität oder ein verlustfreies PNG, vom Viewport oder von der ganzen Scrollhöhe, in der Größe der Gerätevorgabe: Desktop-Breite, Tablet, Telefon. Die Antwort enthält das Bild als Base64 mit Pixelmaßen, ob es eine Ganzseitenaufnahme ist, ob ein Banner weggeklickt wurde und wie lange das Ganze gedauert hat. Ein Parameter waitMs gibt spät zeichnenden Seiten bis zu fünfzehn Sekunden Zeit zum Setzen.

Was es nicht ist

Keine Abkürzung, die HTML ohne Browser rendert: Ein echtes Chromium lädt die Seite, führt ihre Skripte aus und wendet ihre Styles an, das Bild ist also das, was ein Besucher sähe. Auch kein Crawler und kein Tarnwerkzeug; der Browser gibt sich ehrlich zu erkennen, und eine Website, die automatisierte Besucher aussperrt, sperrt auch diesen aus. Das Tool oben nimmt nur öffentliche URLs. In deiner eigenen Session funktioniert derselbe Aufruf nach einem Login, in einem Portal, auf einer Seite, zu der ein Agent gerade navigiert ist, und dort liegt der eigentliche Bedarf: Nachweis eines abgesendeten Formulars, datierte Aufnahme einer Preisseite, Bild eines Dashboards für einen Bericht.

Eine Ganzseitenaufnahme einer Seite mit endlosem Scrollen zeigt, was zum Zeitpunkt der Aufnahme geladen war, nicht alles, was die Seite je zeigen könnte. Fixierte Kopfzeilen erscheinen im Ganzseitenbild oben, weil der Browser sie dort zeichnet. Animationen werden mitten im Frame erwischt. Nichts davon ist ein Fehler, der zu beheben wäre; es ist das, was die Seite getan hat.

Kosten und was übrig bleibt

Ein Screenshot aus dem Tool oben ist eine gewöhnliche abgerechnete Browser-Session einer dafür eingerichteten Organisation, begrenzt je Besucher und je Tag. Über die API ist es ein Aufruf auf deiner eigenen Session und zählt wie jeder andere auf deine Browserstunden. URL und Bild werden dir zurückgegeben und dann verworfen; das Nutzungsjournal hält Zeitpunkt und Größe fest, wie in der Datenschutzerklärung beschrieben. Die fotografierte Seite wird nicht gespeichert und für nichts anderes verwendet.

Fragen zur Screenshot-API

Wie mache ich einen Screenshot einer Website per URL?

URL oben eingeben und den Knopf drücken. Für die Automatisierung ist es ein POST auf den Screenshot-Endpunkt einer Session, wie in den Codebeispielen gezeigt.

Warum ist kein Cookie-Banner im Bild?

Der Consent-Autopilot hat es vor der Aufnahme abgelehnt. Willst du das Banner im Bild, setz consent auf off; willst du die Seite wie ein einwilligender Besucher, setz es auf accept.

Kann ich eine Seite hinter einem Login aufnehmen?

Nicht mit dem Tool hier. In deiner eigenen Session meldest du dich mit Zugangsdaten aus dem Tresor oder per Agentenaufgabe an und rufst screenshot ohne URL auf, um die Seite aufzunehmen, auf der die Session gerade ist.

Wo läuft der Browser?

In einem Container auf Hardware in der EU. Das Bild entsteht dort und geht an dich zurück; aufbewahrt wird es nicht.

Wie groß kann ein Ganzseiten-Screenshot werden?

So hoch wie die Scrollhöhe der Seite bei der gewählten Breite. Sehr lange Seiten ergeben sehr große PNGs; JPEG in der Standardqualität ist deutlich kleiner und als Nachweis meist ausreichend.

Gibt es dafür ein MCP-Tool?

Ja, browser_screenshot auf dem gehosteten MCP-Endpunkt. Ein Agent in Claude oder einem anderen MCP-Client kann dasselbe Bild als Teil einer Aufgabe aufnehmen.

Was passiert, wenn du den Knopf drückst

  1. Ein frischer Browser öffnet die Seite

    Ein Container auf EU-Hardware mit sauberem Profil, ohne Cookies von irgendjemand anderem, und einem Viewport in der gewählten Gerätevorgabe.

  2. Das Banner wird beantwortet

    Der Consent-Autopilot erkennt das CMP und drückt dessen Ablehnen-Knopf oder weicht auf eine generische Ablehnen-Heuristik aus. Passt nichts, bleibt das Banner im Bild, und das Ergebnis sagt consentDismissed: false.

  3. Die Seite setzt sich, das Bild entsteht

    Nach dem Laden und einer optionalen Wartezeit für spät zeichnende Seiten wird der Viewport oder die ganze Scrollhöhe als JPEG oder PNG aufgenommen.

  4. Bild und Aufruf kommen zurück

    Vorschau, Download und die exakte Anfrage, die das Bild erzeugt hat, sodass der Weg vom Tool in deinen eigenen Code ein Kopieren und Einfügen ist.

Parameter des Screenshot-Aufrufs

url Die zu ladende Seite; optional in einer Session, die schon auf einer Seite ist
format jpeg (Standard) oder png
quality 1 bis 100, nur JPEG, Standard 60
fullPage false für den Viewport (Standard), true für die ganze Scrollhöhe
consent reject (Standard), accept, oder off, um das Banner zu lassen, wie es ist
waitMs Zusätzliche Wartezeit nach dem Laden, 0 bis 15000 Millisekunden
Antwort contentType, base64, width, height, fullPage, consentDismissed, durationMs

Stand: 2026-09-08

Dasselbe Bild von innerhalb eines Logins

Fünf Browserstunden, keine Karte. Mit Zugangsdaten aus dem Tresor anmelden und die Seite aufnehmen, die sonst niemand erreicht.