Guía
Tarea (Token)
reCAPTCHA v2

ReCaptchaV2: resolviendo reCAPTCHA v2

TIP

Crea la tarea con el método createTask y obtén el resultado con el método getTaskResult.

Los tipos de tareas types que admitimos son:

  • ReCaptchaV2Task este tipo de tarea requiere tus propios proxies.
  • ReCaptchaV2EnterpriseTask este tipo de tarea requiere tus propios proxies.
  • ReCaptchaV2TaskProxyLess utiliza el proxy incorporado en el servidor.
  • ReCaptchaV2EnterpriseTaskProxyLess utiliza el proxy incorporado en el servidor.

Crear Tarea

Crea una tarea de reconocimiento con el método createTask.

Antes de crear una tarea, puedes aprender lo siguiente:

Si recibes una respuesta no válida, puedes aprender lo siguiente:

Estructura del Objeto de Tarea

PropiedadesTipoRequeridoDescripción
typeStringRequiredReCaptchaV2Task
ReCaptchaV2TaskProxyLess
websiteURLStringRequiredDirección web del sitio web que utiliza generalmente es un valor fijo. (Ejemplo: https://google.com)
websiteKeyStringRequiredLa clave pública de dominio, raramente actualizada. (Ejemplo: b989d9e8-0d14-41sda0-870f-97b5283ba67d)
proxyStringOptionalAprende Cómo usar proxies
pageActionStringOptionalPara sitios v2: pase el parámetro sa si está disponible en la solicitud anchor.
Para sitios v3: busque grecaptcha.execute para encontrar el parámetro action.
enterprisePayloadObjectOptionalPara la versión empresarial, busque grecaptcha.enterprise.render y pase el parámetro s
isInvisibleBoolOptionalPase verdadero si no hay una casilla de verificación “No soy un robot”, pero el desafío seguirá apareciendo, generalmente requerido en el modo invisible v2
isSessionBoolOptionalEl modo de sesión, al estar habilitado, devolverá un valor recaptcha-ca-t, que se usa como cookie y suele aparecer en la versión 3.

Nota: Algunos sitios web requieren un valor recaptcha-ca-e, que suele aparecer en la versión 2. Si existe dicho valor, se devolverá automáticamente; no se requieren otros ajustes.
apiDomainStringOptionalEl nombre de dominio para cargar el código de verificación. Normalmente, no es necesario pasar este parámetro.
http://www.google.com/
http://www.recaptcha.net/
WARNING

Si no está seguro de cómo pasar los parámetros, consulte nuestro blog para usar la extensión capsolver para obtener automáticamente los parámetros.

Si descubre que el puntaje de token que obtiene es bajo, envíe los datos json obtenidos por la extensión al servicio de atención al cliente para su optimización.

Ejemplo de Solicitud

POST https://api.capsolver.com/createTask
Host: api.capsolver.com
Content-Type: application/json
{
  "clientKey": "YOUR_API_KEY",
  "task": {
    "type": "ReCaptchaV2Task",
    "websiteURL": "https://www.google.com/recaptcha/api2/demo",
    "websiteKey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-",
    "enterprisePayload": {
      "s": "SOME_ADDITIONAL_TOKEN" // Optional
    },
    "isInvisible": false, // Optional
    "pageAction": "submit", // Optional
    "apiDomain": "", // Optional
    "proxy": "http:ip:port:user:pass", // socks5:ip:port:user:pass, Optional
  }
}

Después de enviar la tarea a nosotros, deberías recibir en la respuesta un ‘ID de tarea’ si es exitoso. Por favor, lee errorCode: lista completa de errores si no recibiste el ID de tarea.

Ejemplo de Respuesta

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

Obteniendo Resultados

Después de obtener el taskId, debes enviar el taskId para recuperar la solución. La estructura de la respuesta se

explica en getTaskResult.

Dependiendo de la carga del sistema, obtendrás los resultados dentro del intervalo de 1s a 10s.

Ejemplo de Solicitud

POST https://api.capsolver.com/getTaskResult
Host: api.capsolver.com
Content-Type: application/json
 
{
    "clientKey": "YOUR_API_KEY",
    "taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}

Ejemplo de Respuesta

{
    "errorId": 0,
    "errorCode": null,
    "errorDescription": null,
    "solution": {
        "userAgent": "xxx", // User-Agent
        "createTime": 1671615324290, // Tiempo de generación del token
        "gRecaptchaResponse": "3AHJ......", // Token de respuesta
        "recaptcha-ca-t": "AbEM......", // Algunos sitios web v3 tienen modo de sesión. Tras habilitar isSession, este parámetro se devolverá y se usará como cookie.
        "recaptcha-ca-e": "Abp_......" // Algunos sitios web v2 tienen este parámetro, que se utiliza como cookie. Si existe dicho valor, se devolverá automáticamente.
    },
    "status": "ready"
}

Uso de Solicitud de SDK

#pip install --upgrade capsolver
#export CAPSOLVER_API_KEY='...'
 
import capsolver
# capsolver.api_key = "..."
solución = capsolver.solve({
            "type": "ReCaptchaV2TaskProxyLess",
            "websiteURL": "https://www.google.com/recaptcha/api2/demo",
            "websiteKey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-",
          })