Ein Großteil der Daten, mit denen Sie wirklich arbeiten möchten, befindet sich hinter einem Login: Ihr eigenes Analyse-Dashboard, ein internes Reporting-Tool, ein SaaS-Konto, dessen Exportfunktion bei letztem Quartal aufhört, ein Mitgliederbereich, den Sie verwalten. Eine einfache HTTP-Anfrage an diese Seiten führt zu einer Weiterleitung zum Anmeldeformular, weil der Server keine Ahnung hat, wer Sie sind. Um den Inhalt zu erreichen, müssen Sie das tun, was ein Browser tut: sich anmelden, die Sitzung halten und diese Sitzung mit jeder späteren Anfrage senden.

Dieser Leitfaden zeigt Ihnen, wie Sie Daten hinter Login-Seiten mit Python scrapen. Sie bauen einen kleinen, lauffähigen Scraper, der ein Login-Formular inspiziert, Anmeldeinformationen über eine requests.Session postet, die Session-Cookies (und ein CSRF-Token) in authentifizierten Anfragen mitführt und dann geschützte Inhalte liest. Als sicheres, login-förmiges Ziel verwenden wir durchgehend die öffentliche Übungsseite quotes.toscrape.com/login. Der Abschnitt zur Rechtslage am Ende ist kein Standardtext: Er legt die eine harte Regel fest, die alles Folgende verteidigbar macht, lesen Sie ihn also, bevor Sie diesen Code auf ein echtes Konto anwenden.

Was Sie bauen werden

Ein Python-Skript, das sich gegen ein Login-Formular authentifiziert und dann eine Seite abruft, die nur für einen angemeldeten Benutzer gerendert wird. Am Beispiel des Übungsziels handhabt das Skript jeden Teil eines echten Authentifizierungsflows:

  • Form inspection das Lesen der Feldnamen und der Action-URL des Login-Formulars aus seinem HTML.
  • CSRF token das Extrahieren des versteckten Tokens aus dem Formular und das Wiedersenden beim Absenden.
  • Session login das Posten der Anmeldeinformationen über eine persistente requests.Session.
  • Cookie carry-over das Wiederverwenden der Sitzung, sodass ihre Cookies bei jeder späteren Anfrage mitgesendet werden.
  • Authenticated fetch das Anfordern einer geschützten Seite und das Bestätigen, dass Sie angemeldet sind.

Warum eine einfache Anfrage hinter einem Login scheitert

Senden Sie ein einfaches requests.get() an eine Seite, die eine Anmeldung erfordert, und Sie erhalten eine von zwei Nicht-Antworten: eine Weiterleitung zum Anmeldeformular oder das Login-HTML selbst mit Status 200. So oder so ist der geschützte Inhalt nicht vorhanden. Der Server sperrt die Seite hinter einer Sitzung, die er nicht sieht, weil Ihr Skript sich nie authentifiziert hat und nicht den Cookie sendet, der beweist, dass es das getan hat.

Authentifizierung ist die erste Mauer. Die zweite ist alles, was Seiten tun, um automatisierten Datenverkehr draußen zu halten, auch nachdem Sie eine gültige Sitzung besitzen: versteckte CSRF-Token, die sich pro Anfrage ändern, Ratenlimits, IP-Reputationsprüfungen und Seiten, deren Inhalt nach dem Laden von JavaScript gerendert wird statt im initialen HTML enthalten zu sein. Ein statischer Client kann dieses JavaScript nicht ausführen, sodass selbst ein angemeldeter Abruf leer aussehen kann. Wenn Ihr Ziel eine Login-Mauer mit clientseitigem Rendering oder Bot-Blocking kombiniert, gehört die schwere Arbeit einem dafür gebauten Dienst, und da kommt die Crawling API später ins Spiel.

Scope

Diese Anleitung verwendet absichtlich ein öffentliches Übungs-Login. Die Mechanik ist für ein echtes Konto identisch, aber die Rechtmäßigkeit gilt nur, wenn das Konto und die Daten Ihnen gehören oder Sie eine schriftliche Genehmigung haben. Behandeln Sie das Übungsziel als Ersatz für Ihr eigenes Dashboard, niemals für das eines anderen.

Voraussetzungen

Einige Dinge müssen vorhanden sein, bevor Sie Code schreiben. Keines davon nimmt lange.

Python-Grundkenntnisse. Sie sollten in der Lage sein, ein Skript zu schreiben und auszuführen sowie Pakete mit pip zu installieren. Wenn das Parsen von HTML neu für Sie ist, behandelt unser Leitfaden zur Verwendung von BeautifulSoup in Python das, was dieses Tutorial voraussetzt.

Python 3.8 oder höher. Bestätigen Sie mit python --version. Wenn Sie es nicht haben, installieren Sie es von python.org oder über eine Distribution wie Anaconda.

Zugangsdaten, die Sie verwenden dürfen. Für die Übungsseite funktionieren beliebige Benutzernamen und Passwörter. Für echte Arbeit verwenden Sie nur ein Konto, das Sie besitzen oder zu dessen Nutzung Sie ausdrücklich ermächtigt sind. Verwenden Sie niemals gestohlene, geteilte oder erratene Zugangsdaten.

Ein Crawlbase-Konto und JS-Token (für den letzten Schritt). Wenn Ihr echtes Ziel Inhalte mit JavaScript rendert oder einfache Clients blockiert, leiten Sie die authentifizierte Anfrage über die Crawling API. Registrieren Sie sich, öffnen Sie Ihr Dashboard und kopieren Sie Ihren JavaScript (JS)-Token. Behandeln Sie ihn wie ein Passwort und halten Sie ihn aus der Versionskontrolle heraus.

Projekt einrichten

Erstellen Sie eine virtuelle Umgebung, damit Abhängigkeiten isoliert bleiben, und installieren Sie dann die zwei Bibliotheken, die der Scraper benötigt.

bash
python --version

python -m venv login_env
source login_env/bin/activate

pip install requests beautifulsoup4

Aktivieren Sie die Umgebung unter Windows mit login_env\Scripts\activate statt der source-Zeile. Zwei Abhängigkeiten erledigen die Arbeit: requests treibt die HTTP-Sitzung an, und beautifulsoup4 parst das Login-Formular, sodass Sie seine Feldnamen lesen und das CSRF-Token extrahieren können.

Schritt 1: Das Login-Formular inspizieren

Bevor Sie Zugangsdaten posten können, müssen Sie genau wissen, was das Formular erwartet: die URL, an die es sendet, die Namen seiner Eingabefelder und alle versteckten Werte, die es trägt. Öffnen Sie die Login-Seite in Ihrem Browser, klicken Sie mit der rechten Maustaste auf das Formular und wählen Sie Inspizieren. Beim Übungsziel postet das Formular an /login und enthält ein username-Feld, ein password-Feld und ein verstecktes csrf_token-Feld. Echte Seiten variieren; bestätigen Sie diese Namen daher immer gegen das Live-HTML statt Annahmen zu treffen.

Sie können dieselbe Struktur programmatisch lesen. Rufen Sie die Login-Seite ab, laden Sie sie in BeautifulSoup und geben Sie die Felder des Formulars aus, sodass Sie wissen, was zu senden ist.

python
import requests
from bs4 import BeautifulSoup

LOGIN_URL = "https://quotes.toscrape.com/login"

page = requests.get(LOGIN_URL)
soup = BeautifulSoup(page.text, "html.parser")

for field in soup.select("form input"):
    print(field.get("name"), "->", field.get("type"))

Führen Sie dies aus und Sie sehen die drei Feldnamen ausgegeben, einschließlich des versteckten csrf_token. Dieser versteckte Wert ist das Stück, das die meisten erstmaligen Login-Scraper übersehen: Der Server gibt ihn auf der Login-Seite aus und lehnt jeden POST ab, der ihn nicht zurücksendet, was genau das ist, was eine Cross-Site-Request-Forgery-Abwehr bewirken soll.

Schritt 2: Mit einer Sitzung und dem CSRF-Token anmelden

Jetzt posten Sie die Zugangsdaten. Der Schlüssel ist die Verwendung eines requests.Session-Objekts statt eines einmaligen requests.post. Eine Sitzung persistiert Cookies über Anfragen hinweg, sodass jede spätere Anfrage durch dieselbe Sitzung den Cookie automatisch sendet und der Server Sie weiterhin als angemeldet behandelt, sobald der Server bei einer erfolgreichen Anmeldung einen Session-Cookie setzt.

Der Ablauf ist: GET die Login-Seite, um ein frisches CSRF-Token (und die initialen Cookies) zu erhalten, extrahieren Sie das Token aus dem versteckten Input und senden Sie dann Benutzername, Passwort und dasselbe Token an die Action-URL des Formulars über die Sitzung zurück.

python
import requests
from bs4 import BeautifulSoup

LOGIN_URL = "https://quotes.toscrape.com/login"
USERNAME = "your-username"
PASSWORD = "your-password"

session = requests.Session()

# GET the form first to receive a fresh CSRF token and cookies.
login_page = session.get(LOGIN_URL)
soup = BeautifulSoup(login_page.text, "html.parser")
token = soup.find("input", {"name": "csrf_token"})["value"]

payload = {
    "csrf_token": token,
    "username": USERNAME,
    "password": PASSWORD,
}

response = session.post(LOGIN_URL, data=payload)
response.raise_for_status()

# The site shows a "Logout" link only when authenticated.
if "Logout" in response.text:
    print("Login succeeded; session cookies:", session.cookies.get_dict())
else:
    print("Login failed; still on the sign-in page.")

Führen Sie das Skript aus und bei einer erfolgreichen Anmeldung sehen Sie Login succeeded gefolgt von dem Session-Cookie, den der Server gesetzt hat. Dieser Cookie ist Ihr Identitätsnachweis für alles Folgende. Die Prüfung auf den Logout-Link ist ein einfacher, zuverlässiger Erfolgstest: Dieser Text erscheint nur für einen authentifizierten Nutzer, sodass seine Anwesenheit bestätigt, dass die Sitzung funktioniert hat, anstatt sich allein auf den Statuscode zu verlassen.

Crawlbase Crawling API

Das obige Login funktioniert, weil das Übungsziel einfaches HTML ist. Sobald Ihr echtes Dashboard seine Daten mit JavaScript rendert oder automatisierte Clients herausfordert, reicht eine requests.Session allein nicht aus. Die Crawling API rendert die Seite in einem echten Browser und rotiert Anfragen durch vertrauenswürdige Wohn-IPs serverseitig, und sie akzeptiert Ihre Session-Cookies, sodass Sie ihr eine authentifizierte Anfrage übergeben und fertigen Inhalt zurückerhalten können, ohne selbst einen Headless-Browser-Fuhrpark und Proxy-Pool zu betreiben.

Schritt 3: Eine geschützte Seite abrufen und parsen

Mit der authentifizierten Sitzung trägt jede Anfrage durch dasselbe session-Objekt den Login-Cookie automatisch. Das Abrufen einer geschützten Seite ist also nur ein weiteres session.get(), ohne zusätzliche Header. Hier verwenden wir die Sitzung aus Schritt 2 wieder, um eine Seite anzufordern und Inhalt daraus zu parsen, genau wie Sie Ihre eigenen exportierten Daten parsen würden.

python
PROTECTED_URL = "https://quotes.toscrape.com/"

# The same session sends the login cookie automatically.
page = session.get(PROTECTED_URL)
page.raise_for_status()

soup = BeautifulSoup(page.text, "html.parser")
records = []

for card in soup.select(".quote"):
    records.append({
        "text": card.select_one(".text").text.strip(),
        "author": card.select_one(".author").text.strip(),
    })

print(len(records), "records read while authenticated")

Da die Sitzung den Cookie hält, gibt der Server die angemeldete Version der Seite zurück, anstatt Sie zum Formular weiterzuleiten. Wenn Sie Ihre eigene autorisierte Dashboard-URL und ihre echten Selektoren einsetzen, ist das das gesamte Muster: einmal anmelden, dann so viele geschützte Seiten lesen, wie Sie durch dieselbe Sitzung benötigen.

Schritt 4: Die Sitzung in die Crawling API einbringen

Der Ansatz mit einfacher Sitzung hört auf zu funktionieren, wenn die geschützte Seite von JavaScript gerendert wird oder wenn die Website automatisierte Clients herausfordert, bevor Ihr Cookie überhaupt geprüft wird. In diesem Fall behalten Sie dasselbe oben aufgebaute Login und übergeben die authentifizierte Anfrage an die Crawling API, wobei Sie die Cookies übergeben, die der Server Ihnen gegeben hat. Die API rendert die Seite hinter einer vertrauenswürdigen IP und gibt fertigen Inhalt zurück.

python
import requests

JS_TOKEN = "YOUR_CRAWLBASE_JS_TOKEN"
TARGET_URL = "https://quotes.toscrape.com/"

# Reuse the cookies from the logged-in session in Step 2.
cookie_pairs = [f"{k}={v}" for k, v in session.cookies.get_dict().items()]
cookie_header = "; ".join(cookie_pairs)

params = {
    "token": JS_TOKEN,
    "url": TARGET_URL,
    "cookies": cookie_header,
    "country": "US",
}

api = requests.get("https://api.crawlbase.com/", params=params)
api.raise_for_status()
print(api.text[:500])

Der cookies-Parameter nimmt dasselbe key1=value1; key2=value2-Format, das ein Browser sendet, weshalb wir das Cookie-Dict der Sitzung in einen Header-String zusammenfügen. Crawlbase leitet diese Cookies mit der gerenderten Anfrage weiter, sodass die Website den Aufruf als angemeldet behandelt und dann das gerenderte HTML zurückgibt, das Sie mit demselben BeautifulSoup-Code aus Schritt 3 parsen können. Wenn Sie mehrere aufeinanderfolgende authentifizierte Aufrufe machen und die Sitzung über diese hinweg persistieren möchten, lesen Sie unten in den FAQ über den cookies-session-Parameter.

Wie die Ausgabe aussieht

Der Lauf mit einfacher Sitzung aus Schritt 3 erzeugt strukturierte Datensätze, die Sie in JSON serialisieren können. Beim Übungsziel ist die Struktur klein und vorhersehbar:

json
[
  {
    "text": "The world as we have created it is a process of our thinking.",
    "author": "Albert Einstein"
  },
  {
    "text": "It is our choices that show what we truly are.",
    "author": "J.K. Rowling"
  }
]

Setzen Sie Ihr autorisiertes Dashboard ein und die Felder ändern sich, aber das Prinzip nicht: Sie haben sich angemeldet, die Sitzung hat Ihre Identität getragen und Sie haben Inhalte geparst, die eine anonyme Anfrage niemals erreichen könnte.

„Angemeldet bleiben" und abgelaufene Sitzungen handhaben

Zwei praktische Fallstricke tauchen auf, sobald Sie über einen einzelnen Lauf hinausgehen. Der erste ist die „Angemeldet bleiben"-Checkbox. Wenn ein Formular sie anbietet, ist es nur ein weiteres Formularfeld, oft eine Checkbox mit einem Namen wie remember. Inspizieren Sie das Formular, und wenn das Kästchen einem Wert entspricht, fügen Sie ihn Ihrem Payload hinzu (zum Beispiel "remember": "on"). Seiten, die es berücksichtigen, geben einen länglebigeren Cookie zurück, sodass Ihre Sitzung Script-Runs überdauert, anstatt beim Stoppen abzulaufen. Setzen Sie es nur, wenn das Formular es tatsächlich hat; das Erfinden von Feldern, die der Server nicht erwartet, kann dazu führen, dass das Login fehlschlägt.

Der zweite Fallstrick ist das Ablaufen. Login-Cookies sind nicht dauerhaft. Sie laufen nach einem Timer ab, bei einem Logout anderswo oder wenn die Website Sitzungen rotiert. Das Anzeichen ist, dass Ihr Scraper plötzlich die Anmeldeseite statt des Inhalts abruft. Handhaben Sie es, indem Sie den Fehler erkennen (der Logout-Link ist weg oder Sie wurden zu /login weitergeleitet) und den Login-Flow aus Schritt 2 erneut ausführen, um eine frische Sitzung zu erstellen, bevor Sie es erneut versuchen. Diesen Check von Anfang an einzubauen rettet Sie davor, eine Stunde lang still Anmeldeseiten zu scrapen.

Keep the session warm

Wenn Sie viele authentifizierte Anfragen über die Crawling API machen und dasselbe Login über diese hinweg persistieren möchten, weisen Sie dem cookies_session-Parameter einen beliebigen Wert bis zu 32 Zeichen zu. Die API verknüpft die Session-Cookies von einer Anfrage zur nächsten, sodass Sie nicht jedes Mal den vollständigen Cookie-String neu senden müssen.

Nicht blockiert werden

Selbst mit einer gültigen Sitzung achten Websites auf Datenverkehr, der nicht menschlich aussieht. Einige Gewohnheiten halten einen autorisierten Lauf gesund.

  • Anfragen dosieren. Geschützte Seiten in einer engen Schleife zu hämmern ist der schnellste Weg, eine Sitzung zu flaggen. Verteilen Sie Anfragen und fügen Sie eine kurze Pause zwischen ihnen ein.
  • Dasselbe CSRF-Token senden, das das Formular gegeben hat. Ein veraltetes Token wiederzuverwenden oder es zu überspringen ist ein häufiger Grund, warum ein Login-POST abgelehnt wird. Holen Sie immer zuerst das Formular ab und senden Sie sein aktuelles Token zurück.
  • Statuscodes beobachten. Ein Lauf, der beginnt, Weiterleitungen oder Challenges zurückzugeben, sagt Ihnen, dass die Sitzung abgelaufen ist oder die IP-Stufe nicht mehr ausreicht. Rudern Sie zurück und authentifizieren Sie sich neu, statt blind zu wiederholen.
  • Auf Rotation setzen für schwierige Ziele. Wenn eine einzelne IP immer wieder Checks auslöst, rotiert die Crawling API für Sie durch Wohnadressen; wenn Sie einen eigenen Stack aufbauen, bietet der Smart AI Proxy dieselbe Rotation als Drop-in-Endpunkt.

Für das umfassendere Vorgehen lesen Sie wie Sie Websites scrapen, ohne gesperrt zu werden und, wenn die geschützte Seite clientseitig gerendert wird, JavaScript-Seiten mit Python scrapen.

Das ist die Frage, die entscheidet, ob all das oben Genannte geeignet ist, auszuführen, also seien Sie ehrlich darüber, bevor Sie eine Zeile Produktionscode schreiben. Die kurze Antwort: Greifen Sie nur auf Konten und Daten zu, die Sie besitzen oder zu deren Zugriff Sie ausdrücklich berechtigt sind. Sobald Sie sich bei einer Website anmelden, akzeptieren Sie deren Nutzungsbedingungen, und diese schränken automatisierten Zugriff fast immer ein. Das Anmelden gibt Ihnen also nicht das Recht zu scrapen; wenn überhaupt fügt es einen Vertrag hinzu, an den Sie jetzt gebunden sind. Wenn die Daten nicht Ihnen gehören, holen Sie eine schriftliche Genehmigung ein, bevor Sie dagegen automatisieren.

Was klar außerhalb der Grenzen liegt, ist der Teil, den dieser Leitfaden nicht lehrt. Verwenden Sie niemals gestohlene, geteilte oder mit Brute-Force erratene Zugangsdaten und melden Sie sich niemals bei einem Konto an, das nicht Ihres ist. Sammeln Sie niemals personenbezogene Daten anderer Nutzer, private Nachrichten, Profile oder irgendetwas, das eine echte Person als ihres betrachten würde. Authentifizierung zu umgehen, eine Login-Mauer zu scrapen, zu der Sie nicht eingeladen wurden, oder personenbezogene Informationen zu ernten, ist kein Graubereich; es kann Computer-Missbrauchs- und Datenschutzgesetze verletzen, unabhängig davon, wie sauber Ihr Code ist. Die hier beschriebenen Techniken existieren für einen einzigen Zweck: Ihre eigenen autorisierten Daten zu erreichen, etwa Zahlen von einem Dashboard zu exportieren, das Sie verwalten, wenn die Website keinen einfacheren Weg bietet.

Dieser einfachere Weg ist meist der richtige erste Halt. Bevor Sie ein Login scripten, prüfen Sie, ob der Dienst eine offizielle API, eine Datenexport- oder Download-Funktion oder eine OAuth-Integration hat. Das sind die sanktionierten Wege, die der Anbieter genau dafür gebaut hat, und sie halten Sie auf der richtigen Seite der Bedingungen, denen Sie zugestimmt haben. Greifen Sie auf Sitzungs-Scraping nur zurück, wenn kein offizieller Mechanismus existiert und die Daten wirklich Ihnen gehören; beschränken Sie dann den Umfang auf diese Daten und nichts anderes. Wenn ein Projekt Informationen benötigt, die anderen Personen oder Organisationen gehören, ist ein formeller Datenvertrag der richtige Weg, kein ausgefeilteres Login-Skript.

Zusammenfassung

Wichtigste Erkenntnisse

  • Autorisierung kommt zuerst. Scrapen Sie hinter einem Login nur für Konten und Daten, die Sie besitzen oder die Sie ausdrücklich nutzen dürfen, und bevorzugen Sie eine offizielle API oder einen Export, wenn einer existiert.
  • Das Formular inspizieren, bevor Sie posten. Feldnamen, Action-URL und alle versteckten CSRF-Tokens aus dem Login-HTML lesen statt zu raten.
  • Eine Sitzung verwenden, keine Einzelanfragen. Eine requests.Session persistiert Cookies, sodass ein einmaliges Login jede spätere Anfrage authentifiziert hält.
  • Das CSRF-Token zurücksenden. Das Formular per GET abholen, um ein frisches Token zu erhalten, und es dann beim POST zurücksenden, sonst lehnt der Server das Login ab.
  • JS-Rendering und Blocks der Crawling API übergeben. Wenn eine Sitzung allein nicht ausreicht, übergeben Sie Ihre Cookies an die Crawling API, sodass sie hinter einer vertrauenswürdigen IP rendert und fertigen Inhalt zurückgibt.

Häufig gestellte Fragen

Warum gibt eine einfache Anfrage die Login-Seite statt meiner Daten zurück?

Weil der Server die Seite hinter einer Sitzung sperrt, die Ihr Skript nie aufgebaut hat. Ein einfaches requests.get() sendet keinen Login-Cookie, sodass der Server Sie als anonym behandelt und eine Weiterleitung zum Anmeldeformular oder das Formular-HTML mit Status 200 zurückgibt. Um den Inhalt zu erreichen, müssen Sie sich zuerst authentifizieren und dann den Session-Cookie mit jeder Anfrage senden, was eine requests.Session automatisch tut.

Wie handle ich ein CSRF-Token in einem Login-Formular?

Senden Sie zuerst eine GET-Anfrage an die Login-URL, parsen Sie das zurückgegebene HTML und lesen Sie den versteckten CSRF-Input (oft csrf_token genannt) aus dem Formular. Schließen Sie diesen genauen Wert in den Payload ein, den Sie an die Login-URL zurückposten. Einige Seiten rotieren das Token pro Anfrage oder verwenden mehr als eines; holen Sie daher immer das Formular frisch und inspizieren Sie es sorgfältig statt ein Token hardzucodieren.

Was ändert „Angemeldet bleiben" an der Anfrage?

Es ist ein zusätzliches Formularfeld, normalerweise eine Checkbox. Wenn Sie es in Ihren POST-Payload aufnehmen (zum Beispiel "remember": "on"), geben Seiten, die es berücksichtigen, einen länglebigeren Cookie aus, sodass die Sitzung Script-Runs überdauert statt abzulaufen, wenn Sie aufhören. Fügen Sie das Feld nur hinzu, wenn das Formular es tatsächlich hat; Felder zu senden, die der Server nicht erwartet, kann das Login unterbrechen.

Mein Scraper hat angefangen, mitten im Lauf Login-Seiten zurückzugeben. Was ist passiert?

Ihr Session-Cookie ist höchstwahrscheinlich abgelaufen oder wurde durch einen Timer, einen Logout anderswo oder die Rotation von Sitzungen durch die Website ungültig gemacht. Erkennen Sie es (der Logout-Link ist weg oder Sie wurden zu /login weitergeleitet) und führen Sie den Login-Flow erneut aus, um eine frische Sitzung zu erstellen, bevor Sie es erneut versuchen. Diesen Check von Anfang an einzubauen verhindert, dass Sie still Anmeldeseiten scrapen.

Kann ich das Konto einer anderen Person auf diese Weise scrapen?

Nein. Dieser Leitfaden ist auf Daten beschränkt, die Sie besitzen oder zu deren Zugriff Sie ausdrücklich berechtigt sind. Gestohlene, geteilte oder erratene Zugangsdaten zu verwenden, sich bei einem Konto anzumelden, das nicht Ihres ist, oder personenbezogene Daten anderer Nutzer zu sammeln, liegt außerhalb der Grenzen und kann Computer-Missbrauchs- und Datenschutzgesetze verletzen. Wenn Sie Daten benötigen, die jemand anderem gehören, holen Sie eine schriftliche Genehmigung oder nutzen Sie einen offiziellen Datenvertrag.

Wann sollte ich die Crawling API statt einfacher requests verwenden?

Verwenden Sie einfache requests, wenn die geschützte Seite statisches HTML ist, wie beim Übungsziel hier. Greifen Sie auf die Crawling API zurück, wenn Ihr autorisiertes Ziel seinen Inhalt mit JavaScript rendert oder automatisierte Clients herausfordert. Sie behalten dasselbe Login, das Sie aufgebaut haben, und übergeben dann die Session-Cookies über den cookies-Parameter an die API, sodass sie hinter einer vertrauenswürdigen IP rendert und fertigen Inhalt zurückgibt.

Jetzt loslegen

Crawlen Sie jede Website im großen Maßstab, ohne gegen die Infrastruktur zu kämpfen.

Crawlbase übernimmt Proxys, Fingerprints und CAPTCHAs, damit Ihr Team Datenpipelines ausliefert, statt Crawl-Infrastruktur zu pflegen. 1.000 Anfragen kostenlos, keine Karte erforderlich.

Self-Service · Kein Verkaufsgespräch erforderlich · Enterprise-Crawl-Volumen verfügbar