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
Propiedades | Tipo | Requerido | Descripción |
---|---|---|---|
Type | String | Required | ReCaptchaV2Task ReCaptchaV2TaskProxyLess |
websiteURL | String | Required | Dirección web del sitio web que utiliza generalmente es un valor fijo. (Ejemplo: https://google.com) |
websiteKey | String | Required | La clave pública de dominio, raramente actualizada. (Ejemplo: b989d9e8-0d14-41sda0-870f-97b5283ba67d) |
proxy | String | Optional | Aprende Cómo usar proxies |
pageAction | String | Optional | Algunos sitios en el punto final de anclaje tienen el parámetro “sa”, es el valor de acción. |
enterprisePayload | Object | Optional | Carga empresarial |
isInvisible | Bool | Optional | Si reCaptcha no tiene pageAction, la bandera de contenido de la solicitud de recarga tiene “fi”. |
apiDomain | String | Optional | Dirección del dominio desde el cual cargar reCAPTCHA Enterprise. Por ejemplo: • http://www.google.com/ • http://www.recaptcha.net/ No uses un parámetro si no sabes por qué es necesario. |
userAgent | String | Optional | User-Agent del navegador que se utiliza en la emulación. Es necesario que uses una firma de un navegador moderno, de lo contrario Google te pedirá que “actualices tu navegador”. |
cookies | Array | Optional | Aprende Cómo usar cookies |
anchor | String | Optional | Cómo evadir todas las versiones de reCAPTCHA Enterprise v2, v2 invisible, v3, v3 enterprise con una puntuación del 0.9 |
reload | String | Optional | Cómo evadir todas las versiones de reCAPTCHA Enterprise v2, v2 invisible, v3, v3 enterprise con una puntuación del 0.9 |
Ejemplo de Solicitud
POST https://api.capsolver.com/createTask
Host: api.capsolver.com
Content-Type: application/json
{
"clientKey": "YOUR_API_KEY",
"task": {
// Requerido
"type": "ReCaptchaV2Task",
// Requerido
"websiteURL": "https://www.google.com/recaptcha/api2/demo",
// Requerido
"websiteKey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-",
"enterprisePayload": {
// Opcional, requerido si el sitio web utiliza reCAPTCHA Enterprise
"s": "ALGÚN_TOKEN_ADICIONAL"
},
"isInvisible": false,
// Opcional
"pageAction": "enviar",
// Opcional
"apiDomain": "",
// Opcional
"userAgent": "",
// Opcional
"cookies": [
{
"name": "__Secure-3PSID",
"value": "AIKkIs3ch7YsxxxxYIzRqNZPGm60cdHozgwfUW1o8MF3kRcf8clJscTI6OtCqVpqNF8I88pLBJkUgQ"
},
{
"name": "__Secure-3PAPISID",
"value": "TKS1iVpGxYbxxxk0n2o/AytXQTb6RUALqxSEL"
}
],
// Opcional
"proxy": "http:ip:port:user:pass",
// socks5:ip:port:user:pass
// Opcional, solo necesitas enviarlo una vez y obtener el resultado con éxito, puedes eliminar este parámetro
"anchor": "base64 content",
"reload": "base64 content"
}
}
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
"expireTime": 1671615324290, //Expiración del token
"gRecaptchaResponse": "3AHJ....." //Token de la solución
},
"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-",
})