NeuroCaptcha

Tipo de tarea

reCAPTCHA v3 Enterprise

RecaptchaV3EnterpriseTaskProxylesssin proxy

reCAPTCHA v3 no tiene widget: el sitio puntúa cada acción de 0.0 a 1.0. La API devuelve un token para la pageAction solicitada; minScore fija la puntuación necesaria.

Variante Enterprise: el sitio carga enterprise.js y puede pasar datos adicionales en enterprisePayload; envíelos tal cual.

Sin proxy: resolvemos desde nuestra propia infraestructura. Ideal cuando el sitio de destino no vincula el token a una IP.

Precio

2,00 US$por 1000 tareas

0,002 US$ por tarea

Obtener clave de API

Métricas en vivo, 24 h

Las métricas en vivo de este tipo aparecerán en la página de estado tras el lanzamiento.

Parámetros de la tarea

ParámetroTipoobligatorioParámetros de la tarea
typestringobligatorioRecaptchaV3EnterpriseTaskProxyless
websiteURLstringobligatorioURL completa de la página con el captcha.
websiteKeystringobligatorioClave del sitio (data-sitekey o el parámetro k de la solicitud anchor).
minScorenumberopcionalPuntuación necesaria, de 0.1 a 0.9. Cuanto más alta, más tarda la resolución.
pageActionstringopcionalNombre de la acción que la página pasa a grecaptcha.execute.
enterprisePayloadobjectopcionalParámetros Enterprise adicionales, por ejemplo s, como objeto.
apiDomainstringopcionalDominio desde el que se carga el widget: google.com o recaptcha.net.
userAgentstringopcionalUser-Agent con el que se resuelve; use el mismo al enviar el token.
cookiesstringopcionalCookies del sitio de destino en formato key1=value1; key2=value2.

Ejemplo

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

Otros tipos de tareas