Was sich nach der Anmeldung ändert
Eine öffentliche Seite lässt sich oft mit einer einfachen HTTP-Anfrage abrufen. Eine angemeldete Seite hängt meist von mehreren Teilen des Browserzustands ab:- Sitzungs-Cookies, die belegen, dass der Benutzer bereits authentifiziert wurde.
- CSRF-Token oder Anfrage-Header, die die Website bei Formularübermittlungen und API-Aufrufen erwartet.
- Werte im lokalen Speicher oder Sitzungsspeicher, die von Single-Page-Apps verwendet werden.
- Weiterleitungslogik, die nicht authentifizierte Besucher zu
/loginzurückschickt. - Ablaufregeln, die Sitzungen nach einer bestimmten Zeit, Inaktivität, IP-Änderungen oder Sicherheitsereignissen ungültig machen.
Ansatz 1: Cookies aus einer echten Sitzung wiederverwenden
Der häufigste Ansatz besteht darin, sich einmal anzumelden, die entstehenden Cookies zu speichern und sie bei späteren Scraping-Läufen wiederzuverwenden. Dies funktioniert gut, wenn die Website Sitzungen über Stunden oder Tage aktiv hält und sie nicht zu eng an ein Gerät oder eine IP-Adresse bindet. Im Code sieht das Muster folgendermaßen aus:Ansatz 2: Mit einem Browser anmelden
Einige Websites erfordern einen echten Browser-Anmeldeablauf. Der Web-Scraper öffnet die Anmeldeseite, füllt das Formular aus, sendet es ab, wartet auf die Kontoseite und speichert anschließend den Browserzustand für spätere Läufe.Ansatz 3: Anmelde-API nachbilden
Manchmal sendet das Anmeldeformular eine einfache POST-Anfrage an einen Authentifizierungsendpunkt. Wenn der Ablauf unkompliziert und gemäß den Website-Bedingungen zulässig ist, können Sie diese Anfrage direkt mit einem HTTP-Client nachbilden, die zurückgegebenen Cookies erfassen und anschließend auf der Website fortfahren. Dies ist meist weniger stabil als die Browser-Anmeldung, da Authentifizierungsabläufe häufig CSRF-Token, Bot-Prüfungen, Geräte-Fingerprinting oder wechselnde ausgeblendete Felder enthalten. Anhand der Registerkarte „Network“ können Sie erkennen, ob die Anmeldung einfach genug für eine Nachbildung ist oder eine Browsersitzung den sichereren Weg darstellt.MFA, SSO und Sicherheitsabfragen
Multi-Faktor-Authentifizierung verändert die Gestaltung des Workflows. Ein Web-Scraper sollte nicht versuchen, MFA zu umgehen. Planen Sie stattdessen entsprechend:- Verwenden Sie einen Anmeldeschritt mit menschlicher Mitwirkung und speichern Sie anschließend die authentifizierte Sitzung.
- Bevorzugen Sie offizielle APIs oder Dienstkonten, wenn die Website sie anbietet.
- Rechnen Sie mit ablaufenden Sitzungen und erstellen Sie einen Workflow zur Aktualisierung oder erneuten Anmeldung.
- Verwenden Sie keine persönlichen Konten für unbeaufsichtigte Produktionsaufträge.
Sitzungssicherheit
Authentifiziertes Scraping kann Konten sperren, Warnmeldungen auslösen oder vertrauliche Daten offenlegen, wenn es nachlässig betrieben wird. Nutzen Sie folgende Schutzmaßnahmen:- Separate Konten pro Aufgabe. Vermischen Sie keine unabhängigen Scraping-Aufträge in derselben angemeldeten Sitzung.
- IP-Adresse und Browseridentität innerhalb einer Sitzung stabil halten. Ein Proxy-Wechsel während einer Sitzung kann wie eine Kontoübernahme wirken.
- Aktionen begrenzen. Angemeldete Bereiche werden häufig strenger überwacht als öffentliche Seiten.
- Abmeldeseiten erkennen. Ein Web-Scraper sollte erkennen, wenn er zur Anmeldung weitergeleitet wurde, statt die Anmeldeseite als echte Daten zu analysieren.
- Geheimnisse sicher speichern. Zugangsdaten, Cookies und Dateien mit Speicherzuständen sind vertraulich.
- Zugriffe bewusst protokollieren. Speichern Sie genügend Laufhistorie für die Fehlerdiagnose, schreiben Sie jedoch keine privaten Seiteninhalte oder Zugangsdaten in Protokolle.