Skip to main content
Dieser Artikel beschreibt eine Integrationsanleitung für die Recaptcha2 Protokoll Erkennungs-API, die es Benutzern ermöglicht, die Recaptcha2 Verifizierungscode-Bilder nicht zu erkennen und auszuwählen, sondern lediglich durch die Einreichung des Website-Schlüssels eine automatische Dekodierung im Hintergrund zu erreichen und die Verifizierung abzuschließen.

Antragsprozess

Um die Recaptcha2 Protokoll Erkennungs-API zu verwenden, müssen Sie zunächst im Ace Data Cloud Dashboard Ihr API-Token abrufen und für zukünftige Verwendung aufbewahren. Wenn Sie noch nicht angemeldet oder registriert sind, werden Sie automatisch zur Anmeldeseite weitergeleitet, um sich zu registrieren und anzumelden. Nach Abschluss werden Sie automatisch zur aktuellen Seite zurückgeleitet. Ein API-Token reicht aus, um alle Dienste der Plattform zu nutzen, es ist nicht erforderlich, für jeden Dienst separat zu beantragen. Bei der ersten Beantragung erhalten Sie ein kostenloses Kontingent, um es kostenlos auszuprobieren; wenn das Kontingent nicht ausreicht, können Sie im Dashboard Ihr allgemeines Guthaben aufladen.
📘 Vollständige Dokumentation: Recaptcha2 Protokoll Erkennungs-API →

Grundlegende Nutzung

Zunächst sollten Sie die grundlegende Nutzung verstehen, indem Sie die URL der Website eingeben, die den zu verarbeitenden Verifizierungscode enthält, um das verarbeitete Ergebnis zu erhalten. Zuerst müssen Sie einfach ein website_url-Feld übermitteln. Unsere Beispiel-Website ist: https://www.google.com/recaptcha/api2/demo, wir müssen auf der website_url-Seite den website_key abrufen. Öffnen Sie zunächst diese Webseite, drücken Sie F12, um die Konsole zu öffnen, und suchen Sie dann im Element-Bereich global nach recaptcha-demo, um das folgende Ergebnis zu erhalten:

Die Zeichenfolge, die data-sitekey entspricht, ist der Wert des website_key. Hier sind die spezifischen Parameterergebnisse:

Hier haben wir die Request-Header festgelegt, einschließlich:
  • accept: In welchem Format Sie die Antwort erhalten möchten, hier eingetragen als application/json, also im JSON-Format.
  • authorization: Der Schlüssel zur API-Nutzung, den Sie nach der Beantragung direkt auswählen können.
Außerdem haben wir den Request-Body festgelegt, einschließlich:
  • website_url: Die URL der Website, die den Verifizierungscode verarbeitet.
  • website_key: Der Website-Schlüssel-Identifikator in Recaptcha2.
  • proxy: Optional, bringen Sie Ihren eigenen Proxy mit (Bring Your Own Proxy). Nach der Einstellung wird der Dienst über die von Ihnen bereitgestellte Proxy-IP zur Dekodierung des Verifizierungscodes verwendet, um die Qualität der Ausgangs-IP zu steuern (z. B. um zu vermeiden, dass öffentliche Proxy-IPs von der Zielseite blockiert werden und 410 Gone zurückgeben). Das Format ist scheme://[user:pass@]host:port, wobei scheme http/https/socks4/socks5 unterstützt, z. B. http://user:pass@1.2.3.4:8080. Wenn nicht ausgefüllt, wird der Standardproxy der Plattform verwendet.
Nach der Auswahl können Sie feststellen, dass auf der rechten Seite auch der entsprechende Code generiert wurde, wie im Bild gezeigt:

Klicken Sie auf die Schaltfläche „Try“, um einen Test durchzuführen. Wie im obigen Bild gezeigt, haben wir das folgende Ergebnis erhalten:
Die Rückgabe enthält mehrere Felder, die wie folgt beschrieben werden:
  • token, das Ergebnis der Verarbeitung der Recaptcha2-Verifizierung.
  • started_at, finished_at: Die Zeit, zu der diese Anfrage verarbeitet und das Ergebnis erzeugt wurde, Unix-Zeitstempel (Sekunden, Fließkomma).
  • elapsed: Die gesamte Verarbeitungszeit (Sekunden).
Wir können sehen, dass wir das Verifizierungsergebnis der Recaptcha2 erhalten haben, das wir dann für POST oder zur Simulation der Einreichung an die Zielwebsite verwenden können, einmalig, mit einer Gültigkeitsdauer von 120 Sekunden, empfohlen innerhalb von 60 Sekunden zu verwenden. Im Folgenden wird ein Python-Skript bereitgestellt, um das verarbeitete Token an die Zielwebsite zu übermitteln, um die Recaptcha2-Verifizierung zu bestehen. Zuerst müssen wir herausfinden, wie die Website POST-Anfragen sendet, damit wir das generierte Token übergeben können. Wir müssen zunächst die F12-Konsole öffnen und dann manuell durch die Verifizierung gehen. Schließlich können wir sehen, dass die Website eine POST-Anfrage gesendet hat. Wir müssen nur die Struktur dieser POST-Anfrage überprüfen. Der genaue Prozess ist wie folgt:
  • Zuerst manuell die Verifizierung durchlaufen, wie im folgenden Bild gezeigt:

  • Dann auf “submit” klicken und die Änderungen im Netzwerk der Konsole beobachten, wie im folgenden Bild gezeigt:

  • Analysieren Sie die Konstruktion der POST-Anfrage dieser Einreichung, schließlich können Sie mit der rechten Maustaste auf diese Anfrage klicken, um den CURL-Code zu kopieren, wie im folgenden Bild dargestellt:

Aus der obigen Analyse ergibt sich, dass die URL dieser POST-Anfrage lautet: https://www.google.com/recaptcha/api2/demo, wir müssen nur den Parameter g-recaptcha-response übermitteln, dann müssen wir nur das verarbeitete Token in die untenstehenden Daten einfügen, um das Token zur Validierung zu verwenden. Der spezifische CURL-Code lautet wie folgt:
Der entsprechende Python-Code zur Verwendung des Tokens zur Validierung lautet wie folgt:
Dann führen wir den Code aus und beobachten, dass die Konsole ein solches Ergebnis zeigt:

Schließlich haben wir die Validierung des Recaptcha2-Captcha-Protokolls bestanden. Wenn Sie außerdem den entsprechenden Integrationscode generieren möchten, können Sie ihn direkt kopieren, zum Beispiel lautet der CURL-Code wie folgt:
Der Python-Integrationscode lautet wie folgt:

Asynchroner Modus (async)

Standardmäßig ist die API synchron blockierend: Eine Anfrage wartet, bis die Tokenverarbeitung abgeschlossen ist, bevor sie zurückgegeben wird. Wenn Sie eine Multi-Solver-Rotation durchführen und „nach der Einreichung der Aufgabe sofort die task_id erhalten möchten, um andere Solver zu planen und später zurückzukehren, um das Ergebnis abzurufen“, können Sie async: true im Anfragekörper übermitteln. Nach der Übermittlung von async: true gibt die Schnittstelle sofort eine task_id zurück, ohne zu blockieren:
Um den Fortschritt aktiv zu überprüfen, können Sie diese task_id verwenden, um POST /captcha/tasks abzufragen (empfohlen alle 3-5 Sekunden). Diese Schnittstelle löst oder beschleunigt die Aufgabenverarbeitung nicht; selbst wenn Sie nicht abfragen, die Verbindung unterbrochen wird oder der Client beendet wird, wird der Server die Verarbeitung weiterhin durchführen:
Während der Verarbeitung wird status: processing zurückgegeben:
Nach Abschluss der Verarbeitung wird status: ready und das Token zurückgegeben:
Abrechnungsbeschreibung: Im asynchronen Modus werden die Erstellung von Aufgaben und das Abrufen des „verarbeiteten“ Status nicht abgerechnet; der Client wird einmal abgerechnet, wenn das erfolgreiche Ergebnis zum ersten Mal abgerufen wird (entspricht dem aktuellen Verhalten und dem Preis des synchronen Modus). Der Server wird die Aufgaben selbstständig vorantreiben, aber es wird keine Gebühr im Voraus erhoben, nur weil die Verarbeitung im Hintergrund abgeschlossen ist. Wenn die Aufgabe innerhalb von 120 Sekunden nicht erfolgreich ist, wird sie mit HTTP 504 timeout beendet, ohne Gebühren. /captcha/tasks ist nicht verantwortlich für die Vorantreibung der Aufgaben.

Fehlerbehandlung

Wenn beim Aufrufen der API ein Fehler auftritt, gibt die API den entsprechenden Fehlercode und die Informationen zurück. Zum Beispiel:
  • 400 token_mismatched: Ungültige Anfrage, möglicherweise aufgrund fehlender oder ungültiger Parameter.
  • 400 api_not_implemented: Ungültige Anfrage, möglicherweise aufgrund fehlender oder ungültiger Parameter.
  • 401 invalid_token: Unbefugt, ungültiger oder fehlender Autorisierungstoken.
  • 429 too_many_requests: Zu viele Anfragen, Sie haben das Rate-Limit überschritten.
  • 500 api_error: Interner Serverfehler, etwas ist auf dem Server schiefgelaufen.

Beispiel für eine Fehlerantwort

Fazit

Durch dieses Dokument haben Sie gelernt, wie Sie die Recaptcha2-Protokoll-Identifikations-API verwenden, damit Benutzer die Recaptcha2-Captcha-Bilder nicht erkennen und anklicken müssen, sondern lediglich den Website-Schlüssel übermitteln, um die automatische Dekodierung im Hintergrund durchzuführen und die Validierung abzuschließen. Wir hoffen, dass dieses Dokument Ihnen hilft, die API besser zu integrieren und zu verwenden. Bei Fragen wenden Sie sich bitte jederzeit an unser technisches Support-Team.