NeuroCaptcha

Type de tâche

reCAPTCHA v2 Enterprise

RecaptchaV2EnterpriseTaskProxylesssans proxy

reCAPTCHA v2, c’est la case « Je ne suis pas un robot » et sa variante invisible. L’API renvoie un token gRecaptchaResponse que vous soumettez avec le formulaire de la page.

Variante Enterprise : le site charge enterprise.js et peut transmettre des données supplémentaires dans enterprisePayload ; envoyez-les telles quelles.

Sans proxy : nous résolvons depuis notre propre infrastructure. Idéal quand le site cible ne lie pas le token à une IP.

Prix

1,50 $USpour 1 000 tâches

0,0015 $US par tâche

Obtenir une clé API

Métriques en direct, 24 h

Les métriques en direct de ce type apparaîtront sur la page de statut après le lancement.

Paramètres de la tâche

ParamètreTypeobligatoireParamètres de la tâche
typestringobligatoireRecaptchaV2EnterpriseTaskProxyless
websiteURLstringobligatoireURL complète de la page contenant le captcha.
websiteKeystringobligatoireClé du site (data-sitekey ou le paramètre k de la requête anchor).
isInvisiblebooleanfacultatiftrue pour le reCAPTCHA v2 invisible (sans case à cocher).
recaptchaDataSValuestringfacultatifValeur de data-s, si la page l’utilise (certains services Google).
enterprisePayloadobjectfacultatifParamètres Enterprise supplémentaires, par exemple s, sous forme d’objet.
apiDomainstringfacultatifDomaine depuis lequel le widget est chargé : google.com ou recaptcha.net.
userAgentstringfacultatifUser-Agent utilisé pour la résolution ; utilisez le même lors de l’envoi du token.
cookiesstringfacultatifCookies du site cible au format key1=value1; key2=value2.

Exemple

import time
import requests

API = "https://"
KEY = "YOUR_API_KEY"

# 1. create a task: the price is held, not charged
task = requests.post(f"{API}/createTask", json={
    "clientKey": KEY,
    "task": {
        "type": "RecaptchaV2EnterpriseTaskProxyless",
        "websiteURL": "https://example.com/login",
        "websiteKey": "6Le-SITE-KEY",
    },
}).json()
if task["errorId"]:
    raise RuntimeError(task["errorCode"])

# 2. poll the result (or pass "callbackUrl" and get a signed webhook)
while True:
    time.sleep(3)
    res = requests.post(f"{API}/getTaskResult",
                        json={"clientKey": KEY, "taskId": task["taskId"]}).json()
    if res["errorId"]:
        raise RuntimeError(res["errorCode"])
    if res["status"] == "ready":
        print(res["solution"]["gRecaptchaResponse"])
        break

Autres types de tâches