Skip to main content
Este documento presentará una descripción de la integración de la API de reconocimiento del protocolo hCaptcha, que permite a los usuarios completar la verificación sin necesidad de identificar y seleccionar imágenes de captcha hCaptcha, simplemente enviando la clave del sitio web para lograr la decodificación automática en segundo plano.

Proceso de Solicitud

Para utilizar la API de reconocimiento del protocolo hCaptcha, primero dirígete a la consola de Ace Data Cloud para obtener tu token de API, que debes guardar para uso futuro. Si aún no has iniciado sesión o registrado, serás redirigido automáticamente a la página de inicio de sesión que te invitará a registrarte e iniciar sesión, y una vez completado, regresarás automáticamente a la página actual. Un token de API es suficiente para acceder a todos los servicios de la plataforma, sin necesidad de solicitar uno por cada servicio. La primera solicitud te otorgará un crédito gratuito para que puedas probarlo; si el crédito es insuficiente, puedes recargar el saldo general en la consola.
📘 Documentación completa: API de Reconocimiento del Protocolo hCaptcha →

Uso Básico

Primero, debes entender la forma básica de uso, que consiste en ingresar la URL del sitio web que necesita procesar el captcha hCaptcha, y así obtener el resultado procesado. Primero, necesitas pasar un campo website_url, nuestro sitio de ejemplo es: https://accounts.hcaptcha.com/demo, necesitamos obtener el website_key en la página website_url, primero abre esta página, presiona F12 para acceder a la consola, y finalmente realiza una búsqueda global en la página de Elementos por hcaptcha-demo, así obtendremos el siguiente resultado:

La cadena de caracteres correspondiente a data-sitekey es el valor de website_key, a continuación se presentan los resultados de los parámetros específicos:

Aquí podemos ver que hemos configurado los encabezados de la solicitud, que incluyen:
  • accept: el formato de respuesta que deseas recibir, aquí se establece como application/json, es decir, en formato JSON.
  • authorization: la clave para llamar a la API, que puedes seleccionar directamente después de solicitarla.
Además, se configuró el cuerpo de la solicitud, que incluye:
  • website_url: la URL del sitio web que necesita procesar el captcha.
  • website_key: el identificador de la clave del sitio en hCaptcha.
  • proxy: opcional, trae tu propio proxy (Bring Your Own Proxy). Una vez configurado, el upstream utilizará la IP del proxy que proporcionaste para resolver el captcha, lo que ayuda a controlar la calidad de la IP de salida (por ejemplo, para evitar que una IP de proxy pública sea bloqueada por el sitio objetivo y devuelva 410 Gone). El formato es scheme://[user:pass@]host:port, donde scheme admite http/https/socks4/socks5, por ejemplo, http://user:pass@1.2.3.4:8080. Si no se completa, se utilizará el proxy predeterminado de la plataforma.
Después de seleccionar, puedes notar que también se generó el código correspondiente a la derecha, como se muestra en la imagen:

Haz clic en el botón “Try” para realizar la prueba, como se muestra en la imagen anterior, aquí obtuvimos el siguiente resultado:
Los resultados devueltos tienen múltiples campos, que se describen a continuación:
  • token, el resultado de la verificación después de procesar la tarea del captcha hCaptcha.
  • started_at, finished_at: el tiempo de inicio y finalización de esta solicitud, en marca de tiempo Unix (segundos, flotante).
  • elapsed: el tiempo total de procesamiento de esta tarea (segundos). 可以看到我们得到了处理 hCaptcha验证码 的验证结果,然后我们可以用于POST或模拟提交给目标网站,一次性使用,有效期120s,建议在60s内使用,接下来将提供一段CURL版本将处理后token提交到目标网站来通过Recaptcha2验证码。
首先我们需要获取网站是如何发送POST请求,这样我们才能将生成的token传入进去,我们需要先打开F12控制台,然后人工先通过一下,最后我们可以看到网站发送了一个POST请求,我们只需要查看这次的POST请求构造,具体的过程如下:
  • 先人工通过验证,具体的如下图:

  • 再点击submit,观看控制台的network变化,具体的如下图:

  • 分析此次提交的POST请求构造,最后可以右键该请求复制CURL的代码,具体的如下图:

由上图分析可知,此次POST请求的URL为:https://accounts.hcaptcha.com/demo,我们仅需要提交参数 g-recaptcha-responseh-captcha-responseemail,然后我们只需要将处理后的token传入下面的data中即可,调用token验证所对应CURL代码如下:
调用token验证所对应的Python代码如下:
然后我们观察控制台变得了这样的结果:

最后我们就通过了hCaptcha验证码的验证。 另外如果想生成对应的对接代码,可以直接复制生成,例如 CURL 的代码如下:
Python 的对接代码如下:

Modo asíncrono (async)

Por defecto, la API es sincrónica y bloqueante: una solicitud esperará hasta que el token se procese antes de devolverlo. Si estás haciendo rotación de múltiples solucionadores (multi-solver rotation) y deseas “recibir el task_id inmediatamente después de enviar la tarea, para luego programar otros solucionadores y volver más tarde a obtener el resultado”, puedes pasar async: true en el cuerpo de la solicitud. Al pasar async: true, la interfaz devolverá inmediatamente un task_id, sin bloquear la espera:
Luego, usa ese task_id para hacer polling en POST /captcha/tasks (se recomienda cada 3 a 5 segundos) para obtener el resultado:
Durante el procesamiento, se devolverá status: processing:
Al completar el procesamiento, se devolverá status: ready y el token:
Descripción de facturación: en modo asíncrono, la creación de tareas y el polling “en procesamiento” no se facturan; solo se factura una vez cuando se obtiene el token con éxito (el mismo precio que en modo sincrónico). Por lo tanto, cancelar tareas que aún no se han completado durante la rotación no generará costos. /captcha/tasks es común para todas las interfaces de captcha (token y reconocimiento, como hcaptcha, recaptcha2, recaptcha3, recognition/*, etc.), se puede hacer polling con el mismo task_id.

Manejo de errores

Al llamar a la API, si encuentras un error, la API devolverá el código de error y la información correspondiente. Por ejemplo:
  • 400 token_mismatched: Solicitud incorrecta, posiblemente debido a parámetros faltantes o inválidos.
  • 400 api_not_implemented: Solicitud incorrecta, posiblemente debido a parámetros faltantes o inválidos.
  • 401 invalid_token: No autorizado, token de autorización inválido o faltante.
  • 429 too_many_requests: Demasiadas solicitudes, has superado el límite de tasa.
  • 500 api_error: Error interno del servidor, algo salió mal en el servidor.

Ejemplo de respuesta de error

Conclusión

A través de este documento, usted ha aprendido cómo usar la API de reconocimiento del protocolo hCaptcha para permitir que los usuarios no tengan que reconocer y seleccionar imágenes de captcha de hCaptcha, simplemente enviando la clave del sitio web para lograr la decodificación automática en segundo plano y completar la verificación. Esperamos que este documento le ayude a integrar y utilizar mejor esta API. Si tiene alguna pregunta, no dude en ponerse en contacto con nuestro equipo de soporte técnico.