Menu

HCaptchaTask: resuelve HCaptcha a través de un proxy

Los desarrolladores de hCaptcha llaman a su captcha "un reemplazo exacto para Recaptcha". Intentamos crear lo mismo en nuestra API, para que las propiedades de las tareas sean absolutamente iguales que en RecaptchaV2Task excepto por la propiedad "tipo".

Aviso importante sobre el valor de User-Agent. Anteriormente era posible especificar su propio User-Agent para las tareas, pero esto ha cambiado. En su lugar, proporcionamos el user-agent del trabajador que debe utilizar para eludir la versión de pago de Hcaptcha. Esto se cambió porque hoy en día es casi imposible emular un user-agent ajeno en otra plataforma, por ejemplo el user-agent de Chrome en Firefox. Los navegadores tienen un gran número de artefactos secundarios además de navigator.userAgent, que pertenecen específicamente a una u otra plataforma.

Ejemplo de captcha

Objeto de la tarea

PropiedadTipoRequeridoPropósito
typeCadenaHCaptchaTask
websiteURLCadenaDirección de un sitio web objetivo. Puede localizarse en cualquier parte del sitio web, incluso en un área de miembros. Nuestros trabajadores no navegan ahí, en su lugar simulan la visita.
websiteKeyCadenaClave de sitio de hCaptcha
proxyTypeCadenaTipo de proxy
http - http/https habitual proxy
socks4 - socks4 proxy
socks5 - proxy socks5
proxyAddressCadenaDirección IP de proxy ipv4/ipv6. No hay nombres de host o direcciones IP de redes locales.
proxyPortEnteroPuerto del Proxy
proxyLoginCadenaUsuario para proxy, el cual requiere autorización (básica)
proxyPasswordCadenaContraseña del Proxy
userAgentCadenaIndique el agente de usuario que utiliza para navegar por el sitio web. Nuestros trabajadores utilizarán el mismo valor durante el proceso de resolución de Hcaptcha.
Desaprobado. En su lugar, utilice el User-Agent de nuestros trabajadores que es devuelto por el método "getTaskResult".
isInvisibleBooleanoNoEspecifica si Hcaptcha es invisible o no. Esto hará que un widget apropiado para nuestros trabajadores.
isEnterpriseBooleanoNoUtilice este parámetro si desea que su Hcaptcha se resuelva con los trabajadores con mayor puntuación Hcaptcha. Ten en cuenta que triplica el coste de la resolución.
enterprisePayloadObjetoNoParámetros adicionales que usaremos para renderizar el widget Hcaptcha para la versión Enterprise.

PropiedadTipoRequerido
rqdataCadenaNo
sentryBooleanoNo
apiEndpointCadenaNo
endpointCadenaNo
reportapiCadenaNo
assethostCadenaNo
imghostCadenaNo

Ejemplo de solicitud

Python
Javascript
PHP
Java
C#
bash
#pip3 install anticaptchaofficial

from anticaptchaofficial.hcaptchaproxyon import *

solver = hCaptchaProxyon()
solver.set_verbose(1)
solver.set_key("YOUR_API_KEY_HERE")
solver.set_website_url("https://hcaptcha.com/")
solver.set_website_key("00000000-0000-0000-0000-000000000000")
solver.set_proxy_address("PROXY_ADDRESS")
solver.set_proxy_port(1234)
solver.set_proxy_login("proxylogin")
solver.set_proxy_password("proxypassword")
solver.set_user_agent("Mozilla/5.0")
solver.set_cookies("test=true")

# tell API that Hcaptcha is invisible
#solver.set_is_invisible(1)

# tell API that Hcaptcha is Enterprise
#solver.set_is_enterprise(1)

# set here parameters like rqdata, sentry, apiEndpoint, endpoint, reportapi, assethost, imghost
#solver.set_enterprise_payload({
#    "rqdata": "rq data value from target website",
#    "sentry": True
#})

# Specify softId to earn 10% commission with your app.
# Get your softId here: https://anti-captcha.com/clients/tools/devcenter
solver.set_soft_id(0)

g_response = solver.solve_and_return_solution()
if g_response != 0:
    print "g-response: "+g_response
else:
    print "task finished with error "+solver.error_code

Objeto de solución de la tarea

PropiedadTipoPropósito
gRecaptchaResponseCadenaCadena de tokens requerida para interactuar con el envío de formulario en el sitio web de destino.
respKeyCadenaSalida de la función "window.hcaptcha.getRespKey()" cuando está disponible. Algunos sitios web la utilizan para una verificación adicional.
userAgentCadenaUser-Agent del navegador del trabajador. Utilízalo cuando envíes el token de respuesta.

Ejemplo de respuesta

{
    "errorId":0,
    "status":"ready",
    "solution":
    {
        "gRecaptchaResponse":"3AHJ_VuvYIBNBW5yyv0zRYJ75VkOKvhKj9_xGBJKnQimF72rfoq3Iy-DyGHMwLAo6a3......",
        "respKey":"E0_eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJkYXRhIjoiQk5vb1JuZ0FPSHBCM2EyWURSSC......",
        "userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Firefox/102.0"
    },
    "cost":"0.001500",
    "ip":"46.98.54.221",
    "createTime":1472205564,
    "endTime":1472205570,
    "solveCount":"0"
}