Guía
Tarea (Token)
AWS WAF

AwsWafCaptcha: resolviendo AWS WAF

TIP

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

Los tipos de tarea que admitimos son:

  • AntiAwsWafTask: este tipo de tarea requiere tus propios proxies.
  • AntiAwsWafTaskProxyLess: este tipo de tarea no requiere tus propios proxies.

Crear una tarea

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

Estructura del objeto de tarea

PropiedadesTipoRequeridoDescripción
typeStringRequiredAntiAwsWafTask
AntiAwsWafTaskProxyLess
websiteURLStringRequiredLa URL de la página que devuelve la información del captcha.
awsKeyOptionalRequiredCuando el código de estado devuelto por la página websiteURL sea 405, debes proporcionar awsKey.
awsIvOptionalRequiredCuando el código de estado devuelto por la página websiteURL sea 405, debes proporcionar awsIv.
awsContextOptionalRequiredCuando el código de estado devuelto por la página websiteURL sea 405, debes proporcionar awsContext.
awsChallengeJSOptionalRequiredCuando el código de estado devuelto por la página websiteURL sea 202, solo necesitas proporcionar awsChallengeJs.
WARNING

Si el token obtenido no está disponible, puede deberse a la dirección IP. Intenta utilizar el modo AntiAwsWafTask para proporcionar tus propios proxies.

Ejemplo de solicitud

POST https://api.capsolver.com/createTask
Host: api.capsolver.com
Content-Type: application/json
 
{
    "clientKey": "YOUR_API_KEY",
    "task": {
        "type": "AntiAwsWafTask", // Requerido
        "websiteURL": "https://efw47fpad9.execute-api.us-east-1.amazonaws.com/latest", // Requerido
        "proxy": "http:ip:port:user:pass" // socks5:ip:port:user:pass // Opcional
    }
}

Después de enviar la tarea, deberías recibir en la respuesta un ‘ID de tarea’ si la operación es exitosa. Por favor, consulta 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"
}

Obtener resultados

Una vez que tengas el ID de tarea, debes enviarlo para obtener la solución. La estructura de la respuesta se explica en getTaskResult.

Dependiendo de la carga del sistema, obtendrás los resultados en un intervalo de 5 segundos a 30 segundos.

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,
  "taskId": "646825ef-9547-4a29-9a05-50a6265f9d8a",
  "status": "ready",
  "solution": {
    "cookie": "223d1f60-0e9f-4238-ac0a-e766b15a778e:EQoAf0APpGIKAAAA:AJam3OWpff1VgKIJxH4lGMMHxPVQ0q0R3CNtgcMbR4VvnIBSpgt1Otbax4kuqrgkEp0nFKanO5oPtwt9+Butf7lt0JNe4rZQwZ5IrEnkXvyeZQPaCFshHOISAFLTX7AWHldEXFlZEg7DjIc="
  }
}

Uso de la solicitud del SDK

# pip install --upgrade capsolver
# export CAPSOLVER_API_KEY='...'
 
import capsolver
 
# capsolver.api_key = "..."
solution = capsolver.solve({
    "type": "AntiAwsWafTask",
    "websiteURL": "https://efw47fpad9.execute-api.us-east-1.amazonaws.com/latest",
    "proxy": "ip:port:user:pass"
})