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.
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
| Parametro | Tipo | obbligatorio | Parametri del task |
|---|---|---|---|
type | string | obbligatorio | RecaptchaV3EnterpriseTaskProxyless |
websiteURL | string | obbligatorio | URL completo della pagina con il captcha. |
websiteKey | string | obbligatorio | Chiave del sito (data-sitekey o il parametro k della richiesta anchor). |
minScore | number | facoltativo | Punteggio richiesto, da 0.1 a 0.9. Punteggi più alti richiedono più tempo. |
pageAction | string | facoltativo | Nome dell’azione passato a grecaptcha.execute nella pagina. |
enterprisePayload | object | facoltativo | Parametri Enterprise aggiuntivi, ad esempio s, come oggetto. |
apiDomain | string | facoltativo | Dominio da cui viene caricato il widget: google.com o recaptcha.net. |
userAgent | string | facoltativo | User-Agent con cui risolvere; usare lo stesso quando si invia il token. |
cookies | string | facoltativo | Cookie 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
- reCAPTCHA v2
RecaptchaV2TaskProxyless0,60 USD - reCAPTCHA v2
RecaptchaV2Task0,60 USD - reCAPTCHA v2 Enterprise
RecaptchaV2EnterpriseTaskProxyless1,50 USD - reCAPTCHA v2 Enterprise
RecaptchaV2EnterpriseTask1,50 USD - reCAPTCHA v3
RecaptchaV3TaskProxyless0,90 USD - reCAPTCHA v3 Enterprise
RecaptchaV3EnterpriseTask2,00 USD