Zum Inhalt springen
StatusDashboard

Aufgabentypen

Diese Seite wurde maschinell aus der chinesischen Version übersetzt und kann Fehler enthalten. Maßgeblich ist die chinesische Version.

IllustrationreCAPTCHA v2: ein Kontrollkästchen „Ich bin kein Roboter“. Ein Klick setzt entweder sofort den Haken oder öffnet eine Bildaufgabe.

Eine reCAPTCHA-v2-Aufgabe gibt ein Token (gRecaptchaResponse) zurück. Wenn Sie es an die Zielwebsite senden, bestehen Sie die Prüfung, ohne Bilder anzuklicken. Der am häufigsten genutzte Typ NoCaptchaTaskProxyless kostet 15 Punkte (≈ $2.25 / 1k) pro Aufgabe und arbeitet asynchron: Erstellen Sie die Aufgabe mit createTask und rufen Sie dann alle 5 Sekunden getTaskResult auf, um das Ergebnis abzuholen. Bei fehlgeschlagenen Aufgaben und Zeitüberschreitungen erfolgt automatisch eine Punkteerstattung.

POSThttps://api.yescaptcha.com/createTaskGlobaler Endpoint
POSThttps://cn.yescaptcha.com/createTaskChina-Endpoint

Der Anfragekörper ist JSON und wird mit Ihrem clientKey authentifiziert (kopieren Sie ihn im Dashboard auf yescaptcha.com). Fragen Sie das Ergebnis an dem Endpoint ab, an dem Sie die Aufgabe erstellt haben.

  • Auf der Seite gibt es ein Kontrollkästchen „Ich bin kein Roboter“ (I’m not a robot): Standardversion.
  • Es gibt kein Kontrollkästchen, und die Bildaufgabe erscheint erst nach dem Klick auf den Senden-Button: unsichtbare Version. Fügen Sie "isInvisible": true hinzu.
  • Die Seite lädt recaptcha/enterprise.js, oder die Anfrageadressen enthalten enterprise: Enterprise-Version. Verwenden Sie einen Typ, dessen Name Enterprise enthält.

Wenn Sie nicht sicher sind, um welche Variante es sich handelt, lesen Sie Captcha-Typ bestimmen. Wenn die Erfolgsquote per Token nicht ausreicht, können Sie stattdessen reCAPTCHA-v2-Bilderkennung verwenden: Die API teilt Ihnen mit, welche Bilder anzuklicken sind, und Sie klicken im Browser selbst.

AufgabentypPreisModusHinweise
NoCaptchaTaskProxyless$2.25 / 1k; 15 Punkte/Aufgabe · ¥15 / 1kAsynchron
RecaptchaV2TaskProxyless$3.00 / 1k; 20 Punkte/Aufgabe · ¥20 / 1kAsynchronGleiche Parameter wie NoCaptchaTaskProxyless, aber über eine andere Route; beide können als Fallback füreinander verwendet werden
NoCaptchaTask$2.25 / 1k; 15 Punkte/Aufgabe · ¥15 / 1kAsynchronEigener Proxy
RecaptchaV2EnterpriseTaskProxyless$3.00 / 1k; 20 Punkte/Aufgabe · ¥20 / 1kAsynchron
RecaptchaV2EnterpriseTask$3.00 / 1k; 20 Punkte/Aufgabe · ¥20 / 1kAsynchronEigener Proxy

Die Preise in US-Dollar sind Schätzwerte bei 1 US$ ≈ ¥6.67; Aufgaben werden in Punkten berechnet.

  • NoCaptchaTaskProxyless und RecaptchaV2TaskProxyless haben dieselben Parameter, laufen aber über verschiedene Routen. Wenn einer davon eine unzureichende Erfolgsquote hat, versuchen Sie den anderen.
  • Typen ohne Proxyless im Namen (NoCaptchaTask, RecaptchaV2EnterpriseTask) laden das Captcha über Ihren eigenen Proxy. Dafür müssen Sie proxyType, proxyAddress, proxyPort und weitere Felder übergeben. Verwenden Sie sie, wenn die Zielwebsite Anforderungen an die IP-Adresse des Besuchers stellt.

Das task-Objekt von createTask:

FeldTypErforderlichBeschreibung
typestringJaAufgabentyp; siehe „Aufgabentypen und Preise“ auf dieser Seite
websiteURLstringJaVollständige URL der Seite, auf der das Captcha angezeigt wird. Verwenden Sie die Website, auf der Sie das Captcha sehen, nicht die Domain des Captcha-Anbieters
websiteKeystringJaDer Website-Schlüssel (sitekey), zu finden im Quelltext der Seite oder in den Netzwerkanfragen; ändert sich in der Regel nicht
isInvisiblebooleanNeinAuf true setzen für die unsichtbare Variante; sonst weglassen
proxyTypestringEinige TypenProxy-Protokoll: http, https, socks4 oder socks5 (Erforderlich für NoCaptchaTask, RecaptchaV2EnterpriseTask)
proxyAddressstringEinige TypenIP-Adresse oder Hostname des Proxys. Lokale oder private Adressen wie 127.0.0.1 oder 192.168.x.x funktionieren nicht, da unsere Server sie nicht erreichen können (Erforderlich für NoCaptchaTask, RecaptchaV2EnterpriseTask)
proxyPortintegerEinige TypenProxy-Port (Erforderlich für NoCaptchaTask, RecaptchaV2EnterpriseTask)
proxyLoginstringNeinProxy-Benutzername, falls der Proxy eine Authentifizierung erfordert (nur NoCaptchaTask, RecaptchaV2EnterpriseTask)
proxyPasswordstringNeinProxy-Passwort, falls der Proxy eine Authentifizierung erfordert (nur NoCaptchaTask, RecaptchaV2EnterpriseTask)
userAgentstringNeinUser-Agent des Browsers. Enthält das Ergebnis einen userAgent, verwenden Sie diesen Wert, wenn Sie das Token senden (nur NoCaptchaTask, RecaptchaV2EnterpriseTask)
enterprisePayloadobjectNeinZusätzliche Enterprise-Parameter, z. B. der s-Wert von reCAPTCHA Enterprise: {"s": "..."}. Weglassen, wenn die Seite ihn nicht verwendet (nur RecaptchaV2EnterpriseTaskProxyless, RecaptchaV2EnterpriseTask)

Wie Sie websiteURL und websiteKey finden, lesen Sie unter reCAPTCHA-Parameter finden.

Am Beispiel der offiziellen Demoseite von Google:

POST https://api.yescaptcha.com/createTask
{
"clientKey": "YOUR_CLIENT_KEY",
"task": {
"type": "NoCaptchaTaskProxyless",
"websiteURL": "https://www.google.com/recaptcha/api2/demo",
"websiteKey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-"
}
}

Vollständiger Code (Aufgabe erstellen, alle 5 Sekunden abfragen, Token ausgeben). Legen Sie vor dem Ausführen Ihren ClientKey in der Umgebungsvariable YESCAPTCHA_CLIENT_KEY ab:

curl -s https://api.yescaptcha.com/createTask \
-H 'Content-Type: application/json' \
-d '{
"clientKey": "YOUR_CLIENT_KEY",
"task": {
"type": "NoCaptchaTaskProxyless",
"websiteURL": "https://www.google.com/recaptcha/api2/demo",
"websiteKey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-"
}
}'
# Returns {"errorId":0,"taskId":"..."}; then poll every 5 seconds:
curl -s https://api.yescaptcha.com/getTaskResult \
-H 'Content-Type: application/json' \
-d '{"clientKey": "YOUR_CLIENT_KEY", "taskId": "TASK_ID"}'

Bei der Enterprise-Version: Wenn die Seite einen s-Wert an reCAPTCHA übergibt, tragen Sie ihn in enterprisePayload ein:

POST https://api.yescaptcha.com/createTask
{
"clientKey": "YOUR_CLIENT_KEY",
"task": {
"type": "RecaptchaV2EnterpriseTaskProxyless",
"websiteURL": "https://example.com/login",
"websiteKey": "SITE_KEY_OF_THE_PAGE",
"enterprisePayload": {
"s": "S_VALUE_FROM_THE_PAGE"
}
}
}

Mit eigenem Proxy:

POST https://api.yescaptcha.com/createTask
{
"clientKey": "YOUR_CLIENT_KEY",
"task": {
"type": "NoCaptchaTask",
"websiteURL": "https://www.google.com/recaptcha/api2/demo",
"websiteKey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-",
"proxyType": "http",
"proxyAddress": "proxy.example.com",
"proxyPort": 8080,
"proxyLogin": "user",
"proxyPassword": "pass"
}
}

createTask gibt die Aufgaben-ID zurück:

{
"errorId": 0,
"taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}

Rufen Sie damit getTaskResult auf. Solange die Aufgabe noch bearbeitet wird, lautet die Antwort {"errorId": 0, "status": "processing"}; fragen Sie nach 5 Sekunden erneut ab. Ist die Aufgabe abgeschlossen, lautet die Antwort:

{
"errorId": 0,
"status": "ready",
"solution": {
"gRecaptchaResponse": "03AGdBq25SxXT-pmSeBXjzScW-EiocHwwpwqtk1QXlJnGnU..."
}
}
FeldTypBeschreibung
gRecaptchaResponsestringDas Token, das an die Zielwebsite gesendet wird. Einmalig verwendbar, ca. 120 Sekunden gültig; verwenden Sie es innerhalb von 60 Sekunden

Eine Aufgabe wird höchstens etwa 110 Sekunden bearbeitet. Danach wird ERROR_TASK_TIMEOUT zurückgegeben und die Punkte werden erstattet. Bei Fehlern ist errorId gleich 1; behandeln Sie sie anhand von errorCode, siehe Fehlercodes. Wie Sie das Token nach dem Erhalt senden, lesen Sie unter reCAPTCHA mit einem Token abschließen.

Warum besteht das Token für dieselbe Website manchmal die Prüfung und manchmal nicht?

Abschnitt betitelt „Warum besteht das Token für dieselbe Website manchmal die Prüfung und manchmal nicht?“

Ob ein Token besteht, entscheidet die Zielwebsite. Sie bewertet jede Verifizierung mit einem Score und legt einen Schwellenwert fest, der sich jederzeit ändern kann. Deshalb unterscheidet sich die Erfolgsquote von Website zu Website, und nicht jedes Token besteht. Sie können einen ähnlichen Aufgabentyp zum Vergleich der Erfolgsquote ausprobieren oder stattdessen die Bilderkennung verwenden.

Es ist nur einmal verwendbar und etwa 120 Sekunden gültig. Senden Sie es am besten innerhalb von 60 Sekunden nach Erhalt. Die Gültigkeitsdauer legt Google fest.

Wird bei fehlgeschlagener Lösung ein Punkteabzug berechnet?

Abschnitt betitelt „Wird bei fehlgeschlagener Lösung ein Punkteabzug berechnet?“

Nein. Aufgaben, die ERROR_CAPTCHA_UNSOLVABLE zurückgeben oder in eine Zeitüberschreitung laufen, werden automatisch mit einer Punkteerstattung abgeschlossen, siehe Abrechnung und Punkteerstattung.