Skip to main content
Dieser Artikel beschreibt eine Integrationsanleitung für die Recaptcha2 Bildverarbeitungs-API, die es ermöglicht, den Inhalt, den der Benutzer erkennt, und das Recaptcha2 CAPTCHA-Bild einzugeben, um schließlich die Koordinaten des kleinen Bildes zurückzugeben, das angeklickt werden muss, um die Verifizierung abzuschließen.

Antragsprozess

Um die Recaptcha2 Bildverarbeitungs-API zu nutzen, müssen Sie zunächst Ihr API-Token im Ace Data Cloud Dashboard abrufen und für zukünftige Verwendung aufbewahren. Wenn Sie noch nicht angemeldet oder registriert sind, werden Sie automatisch zur Anmeldeseite weitergeleitet, die Sie zur Registrierung und Anmeldung einlädt. 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 Guthaben aufladen.
📘 Vollständige Dokumentation: Recaptcha2 Bildverarbeitungs-API →

Grundlegende Nutzung

Zunächst sollten wir die grundlegende Nutzung verstehen. Wir müssen das Recaptcha2 CAPTCHA-Bild von der Website erfassen. Die URL der Beispielwebsite lautet: https://www.google.com/recaptcha/api2/demo, die spezifische Seite ist wie im folgenden Bild dargestellt:

Wir müssen das Kontrollkästchen für das CAPTCHA anklicken, damit das CAPTCHA-Bild erscheint. Im obigen Bild zeigt der gelbe Pfeil auf einen Textabschnitt, der den Wert des question im Folgenden darstellt. Zunächst müssen wir ein einfaches image-Feld übergeben, das das spezifische Recaptcha2 CAPTCHA-Bild ist, das im obigen Bild durch den roten Pfeil angezeigt wird. Außerdem muss das Bild auf die Standardgröße (100x100, 300x300, 450x450) skaliert werden, damit der Dienst den Bildtyp bestimmen kann. Die Kompression des Bildes müssen Sie selbst durchführen. In diesem Artikel empfehlen wir eine Kompressionswebsite, auf der Sie die Größe und das Format des Bildes komprimieren können. Das komprimierte Ergebnis ist wie im Bild dargestellt: Außerdem müssen Sie den Erkennungsinhalt, der mit dem CAPTCHA-Bild verbunden ist, als Parameter question eingeben. Wir haben nur die folgende Inhaltsübersicht bereitgestellt, die als Referenz dienen kann:

Chinesische Inhaltsübersicht

Englische Inhaltsübersicht

Aus dem obigen Text können wir den Parameter question auf den entsprechenden Wert für den Feuerhydranten /m/01pns0 setzen. Der spezifische Inhalt ist wie folgt:

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.
Zusätzlich haben wir den Request-Body festgelegt, einschließlich:
  • image: Das Base64-kodierte CAPTCHA-Bild.
  • question: Die Frage-ID, bitte in der Tabelle nachsehen, die mit /m/ beginnt.
Nach der Auswahl können Sie sehen, dass auf der rechten Seite der entsprechende Code generiert wurde, wie im Bild dargestellt:

Klicken Sie auf die Schaltfläche „Try“, um einen Test durchzuführen. Wie im obigen Bild zu sehen, haben wir folgendes Ergebnis erhalten:
Die Rückgabe enthält mehrere Felder, die wie folgt beschrieben werden:
  • solution, das Ergebnis der Verifizierung nach der Bearbeitung des Recaptcha2 CAPTCHA-Bildes.
    • size, die Größe des Recaptcha2 CAPTCHA-Bildes.
    • label, der erkannte Inhalt des Recaptcha2 CAPTCHA-Bildes.
    • confidences, die Vertrauenswürdigkeit der Erkennungsbereiche des Recaptcha2 CAPTCHA-Bildes, die Bereiche beginnen bei 0.
    • objects, die Bereiche des Recaptcha2 CAPTCHA-Bildes, die den Erkennungsinhalt erfüllen, die Bereiche beginnen bei 0.
    • type, der Typ der Aufgabe des Recaptcha2 CAPTCHA-Bildes, bei mehreren Bereichen ist es multi.
Wir können sehen, dass wir das Verifizierungsergebnis des Recaptcha2 CAPTCHA-Bildes erhalten haben. Zunächst teilen wir das CAPTCHA-Bild in Bereiche auf, wie im folgenden Bild dargestellt:

Die Bereiche beginnen alle bei 0. Aus dem Ergebnis objects haben wir 2, 5, 7 erhalten. Wir müssen nur auf diese drei Bereiche klicken, um die Verifizierung zu bestehen. Wenn Sie den entsprechenden Integrationscode generieren möchten, können Sie ihn direkt kopieren, zum Beispiel ist der CURL-Code wie folgt:
Der Python-Integrationscode ist wie folgt:

Asynchroner Modus (async)

Standardmäßig ist die API synchron blockierend: Eine Anfrage wartet, bis das Erkennungsergebnis verarbeitet ist, bevor sie zurückgegeben wird. Wenn Sie eine Multi-Solver-Rotation durchführen und „nach dem Einreichen 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 übergeben. Nach dem Übergeben von async: true gibt die Schnittstelle sofort eine task_id zurück, ohne zu blockieren und zu warten:
Verwenden Sie anschließend die task_id, um POST /captcha/tasks abzufragen (empfohlen alle 3-5 Sekunden), um das Ergebnis zu erhalten:
Während der Verarbeitung wird status: processing zurückgegeben:
Nach Abschluss der Verarbeitung wird status: ready und das Erkennungsergebnis solution zurückgegeben (die Struktur der Felder ist identisch mit dem synchronen Modus):
Abrechnungsinformationen: Im asynchronen Modus werden die Erstellung von Aufgaben und die Abfrage „in Bearbeitung“ nicht berechnet; es wird nur einmal berechnet, wenn das Erkennungsergebnis erfolgreich abgerufen wird (zum gleichen Preis wie im synchronen Modus). Daher entstehen beim Abbrechen von noch nicht abgeschlossenen Aufgaben während der Rotation keine Kosten. /captcha/tasks ist für alle Captcha-Schnittstellen (Token und Erkennungsserie) allgemein und kann mit derselben task_id abgefragt werden.

Fehlerbehandlung

Wenn beim Aufruf 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-Bilderkennung-API verwenden, um den Benutzern die Eingabe des Erkennungsergebnisses und des Recaptcha2-Captcha-Bildes zu ermöglichen, und schließlich die Koordinaten des kleinen Bildes zurückzugeben, das angeklickt werden muss, um die Verifizierung abzuschließen. Wir hoffen, dass dieses Dokument Ihnen hilft, die API besser zu integrieren und zu nutzen. Bei Fragen wenden Sie sich bitte jederzeit an unser technisches Support-Team.