HCaptcha: resolviendo hCaptcha
Crea la tarea con el método createTask y obtén el resultado con el método getTaskResult.
y otros tipos de preguntas
Los tipos de tareas types
que admitimos son:
HCaptchaTask
este tipo de tarea requiere tus propios proxiesHCaptchaTaskProxyLess
utiliza el proxy incorporado del servidor
Pedimos disculpas por la reciente inestabilidad del servicio de hCaptcha causada por actualizaciones de imágenes y otros problemas. Lamentamos profundamente cualquier inconveniente causado. Si encuentras nuevas imágenes que impidan el uso del servicio, por favor espera a que las actualicemos. Para cualquier otra pregunta, no dudes en contactarnos en cualquier momento.
ya que cada sitio web tiene algunas configuraciones específicas y generalmente funciona correctamente después de que las configuramos.
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36
(las actualizaciones pueden ocurrir en cualquier momento, tenlo en cuenta).
Crear Tarea
Crea una tarea con el createTask para crear una tarea.
Estructura del objeto de tarea
Propiedades | Tipo | Requerido | Descripción |
---|---|---|---|
type | String | Required | HCaptchaTask HCaptchaTaskProxyLess |
websiteURL | String | Required | Dirección web del sitio web que utiliza hcaptcha, 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 ) |
isInvisible | Boolean | Optional | Establece true si es un captcha invisible |
proxy | String | Optional | Aprende Cómo usar proxies |
enterprisePayload | Object | Optional | Datos personalizados que se utilizan en algunas implementaciones de hCaptcha Enterprise. Entonces debes poner true en el parámetro isEnterprise . En la mayoría de los casos, lo verás como rqdata dentro de las solicitudes de red. IMPORTANTE: DEBES proporcionar un userAgent si envías el captcha con el parámetro data . El valor debe coincidir con el User-Agent que utilizas al interactuar con el sitio web de destino |
getCaptcha | Object | Optional | si obtienes una respuesta no válida, puedes probar con este parámetro, puedes aprender más en Solve HCaptcha |
userAgent | String | Optional | User-Agent del navegador que se utiliza en la emulación. Es necesario que utilices una firma de un navegador moderno, de lo contrario Google te pedirá que “actualices tu navegador”. |
Ejemplo de solicitud
POST https://api.capsolver.com/createTask
Host: api.capsolver.com
Content-Type: application/json
{
"clientKey": "YOUR_API_KEY",
"task": {
//Requerido. Puede usar HCaptchaTaskProxyless o HCaptchaTask
"type": "HCaptchaTaskProxyLess",
//Requerido
"websiteURL": "",
// Requerido
"websiteKey": "00000000-0000-0000-0000-000000000000",
// Opcional
"isInvisible": true,
// Opcional
"enterprisePayload": {
//Opcional, requerido si el sitio tiene HCaptcha Enterprise
"rqdata": ""
},
//Opcional, esto es requerido si usas HCaptchaTask
"proxy": "http:ip:port:user:pass",
// socks5:ip:port:user:pass
//Opcional
"getCaptcha": "fetch request base64 content",
"userAgent": ""
}
}
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
Utiliza el método getTaskResult para obtener los resultados de reconocimiento
Dependiendo de la carga del sistema, obtendrás los resultados en un 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": {
//User-Agent utilizado para resolver el captcha
"userAgent": "xxx",
//Tiempo de vencimiento del token
"expireTime": 1671615324290,
"timestamp": 1671615024290,
"captchaKey": "E0_xxx",
//Token del captcha
"gRecaptchaResponse": "3AHJ....."
},
"status": "ready"
}
Uso de la Solicitud de SDK
# pip install --upgrade capsolver
# export CAPSOLVER_API_KEY='...'
import capsolver
# capsolver.api_key = "..."
solution = capsolver.solve({
"type": "HCaptchaTaskProxyLess",
"websiteURL": "",
"websiteKey": "00000000-0000-0000-0000-000000000000",
})