Как решить HCaptcha с прокси
Разработчики hCaptcha называют свою капчу "a drop-in replacement for Recaptcha". Мы применили тот же принцип в нашем API, поэтому свойства в API те же самые, как и в RecaptchaV2Task, кроме свойства "type".
Важное замечание по поводу значения User-Agent. Ранее для заданий можно было указывать свой собственный User-Agent, но это изменилось. Вместо этого мы предоставляем рабочий user-agent, который необходимо использовать для обхода платной версии Hcaptcha. Это было сделано потому, что в настоящее время практически невозможно эмулировать чужой user-agent в другой платформе, например, user-agent Chrome в Firefox. Браузеры имеют большое количество вторичных артефактов помимо navigator.userAgent, которые принадлежат конкретно той или иной платформе.

Объект задачи
Свойство | Тип | Требуется | Назначение | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
type | Строка | Да | HCaptchaTask | ||||||||||||||||||||||||
websiteURL | Строка | Да | Адрес целевой страницы. Может находиться в любом месте сайта, в том числе в закрытом для подписчиков разделе. Наши работники не посещают сайт, а вместо этого эмулируют посещение страницы. | ||||||||||||||||||||||||
websiteKey | Строка | Да | ключ сайта hCaptcha | ||||||||||||||||||||||||
proxyType | Строка | Да | Тип прокси http - обычный http/https прокси socks4 - socks4 прокси socks5 - socks5 прокси | ||||||||||||||||||||||||
proxyAddress | Строка | Да | Адрес прокси в ipv4/ipv6. Имена хостов или адреса из локальной сети не допускаются. | ||||||||||||||||||||||||
proxyPort | Integer | Да | Порт прокси | ||||||||||||||||||||||||
proxyLogin | Строка | Нет | Логин если требуется авторизация прокси (basic) | ||||||||||||||||||||||||
proxyPassword | Строка | Нет | Пароль прокси | ||||||||||||||||||||||||
Устарело. Вместо этого используйте User-Agent нашего работника, который возвращается в методе "getTaskResult". | |||||||||||||||||||||||||||
isInvisible | Boolean | Нет | Укажите если h-капча невидимая. Это отобразит правильный виджет рекапчи у наших работников. | ||||||||||||||||||||||||
enterprisePayload | Объект | Нет | Дополнительные параметры для Enterprise версии.
|
Пример запроса
#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)
# 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
Объект решения задачи
Свойство | Тип | Назначение |
---|---|---|
gRecaptchaResponse | Строка | Строка токена, которая требуется для отправки формы на целевом сайте. |
respKey | Строка | Результат функции "window.hcaptcha.getRespKey()" когда она доступна. Некоторые сайты используют это значение для дополнительных проверок. |
userAgent | Строка | User-Agent браузера работника. Используйте его когда отправляете форму с токеном. |
Пример ответа
{
"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"
}