NeuroCaptcha

Tipo di task

reCAPTCHA v3 Enterprise

RecaptchaV3EnterpriseTaskProxylesssenza proxy

reCAPTCHA v3 non ha widget: il sito assegna a ogni azione un punteggio da 0.0 a 1.0. L’API restituisce un token per la pageAction richiesta; minScore imposta il punteggio necessario.

Variante Enterprise: il sito carica enterprise.js e può passare dati aggiuntivi in enterprisePayload, da inviare così come sono.

Senza proxy: risolviamo dalla nostra infrastruttura. Ideale quando il sito di destinazione non lega il token a un IP.

Prezzo

2,00 USDper 1000 task

0,002 USD per task

Ottieni la chiave API

Metriche in tempo reale, 24 h

Le metriche in tempo reale per questo tipo compariranno sulla pagina di stato dopo il lancio.

Parametri del task

ParametroTipoobbligatorioParametri del task
typestringobbligatorioRecaptchaV3EnterpriseTaskProxyless
websiteURLstringobbligatorioURL completo della pagina con il captcha.
websiteKeystringobbligatorioChiave del sito (data-sitekey o il parametro k della richiesta anchor).
minScorenumberfacoltativoPunteggio richiesto, da 0.1 a 0.9. Punteggi più alti richiedono più tempo.
pageActionstringfacoltativoNome dell’azione passato a grecaptcha.execute nella pagina.
enterprisePayloadobjectfacoltativoParametri Enterprise aggiuntivi, ad esempio s, come oggetto.
apiDomainstringfacoltativoDominio da cui viene caricato il widget: google.com o recaptcha.net.
userAgentstringfacoltativoUser-Agent con cui risolvere; usare lo stesso quando si invia il token.
cookiesstringfacoltativoCookie del sito di destinazione nel formato key1=value1; key2=value2.

Esempio

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": "RecaptchaV3EnterpriseTaskProxyless",
        "websiteURL": "https://example.com/login",
        "websiteKey": "6Le-SITE-KEY",
        "minScore": 0.7,
        "pageAction": "login",
    },
}).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

Altri tipi di task