حل HCaptcha با پروکسی
Hcaptcha devs کپچای خودش را «یک جایگزین کشویی برای ریکپچا» مینامد. ما تلاش کردهایم تا همین کار را در API خودمان انجام دهیم تا خصوصیات وظیفه در RecaptchaV2Task به جز خصوصیت «نوع» یکسان باشند.
اطلاعیه مهم درباره مقدار «عامل کاربر». قبلاً تعیین «عامل کاربر» توسط خودتان برای انجام وظایف امکانپذیر بود، اما شرایط تغییر کرده است. در عوض، ما خودمان «عامل کاربر» کارگر که باید از آن برای دورزدن نسخه پولی Hcaptcha استفاده کنید را ارائه میکنیم. دلیل این تغییر این بود که این روزها شبیهسازی «عامل کاربر» غریبه در یک پلتفرم دیگر، بهعنوانمثال عامل کاربر کروم در فایرفاکس، تقریباً غیرممکن است. مرورگرها به جز navigator.userAgent، محصولات جانبی زیادی دارند که مخصوص هر پلتفرم خاص هستند.
![](https://d2dcgek2qxtwh0.cloudfront.net/images/nuxt3/hcaptcha.png)
مثال کپچا
شیء وظیفه
خصوصیت | نوع | ضروری | هدف | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
type | رشته | بله | HCaptchaTask | ||||||||||||||||||||||||
websiteURL | رشته | بله | آدرس صفحه وب هدف. میتواند در هرجایی از وبسایت حتی بخش اعضا قرار گرفته باشد. کارگران ما به آنجا نمیروند بلکه در عوض بازدید را شبیهسازی میکنند. | ||||||||||||||||||||||||
websiteKey | رشته | بله | کلید سایت hCaptcha | ||||||||||||||||||||||||
proxyType | رشته | بله | نوع پروکسی ، http – پروکسی عادی http/https socks4- پروکسی socks4 ، socks5 – پروکسی socks5 | ||||||||||||||||||||||||
proxyAddress | رشته | بله | آدرس IP پروکسی ipv4/ipv6. بدون نام میزبان یا آدرسهای IP متعلق به شبکههای محلی | ||||||||||||||||||||||||
proxyPort | عدد صحیح | بله | پورت (درگاه) پروکسی | ||||||||||||||||||||||||
proxyLogin | رشته | بله | نام کاربری برای پروکسی که نیاز به احراز هویت دارد (پایه) | ||||||||||||||||||||||||
proxyPassword | رشته | بله | رمز عبور پروکسی | ||||||||||||||||||||||||
منسوخ شده است. در عوض، از «عامل کاربر» کارگران ما که توسط متد "getTaskResult" برگردانده میشود، استفاده کنید. | |||||||||||||||||||||||||||
isInvisible | بولی | خیر | تعیین میکند که آیا Hcaptcha نامرئی است یا خیر. این روش، یک ویجت مناسب برای کارگران ما فراهم میکند. | ||||||||||||||||||||||||
isEnterprise | بولی | خیر | اگر میخواهید Hcaptcha شما توسط کارگرانی با بالاترین امتیاز Hcaptcha حل شود، از این پارامتر استفاده کنید. توجه کنید که این پارامتر، هزینه حل کپچا را سه برابر میکند. | ||||||||||||||||||||||||
enterprisePayload | شیء | خیر | پارامترهای بیشتری که از آنها برای رندر ویجت Hcaptcha نسخه Enterprise استفاده خواهیم کرد.
|
نمونه درخواست
Python
Javascript
Go
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)
print("user-agent, use it to post the form: ", solver.get_user_agent())
print("respkey, if any: ", solver.get_respkey())
else:
print("task finished with error "+solver.error_code)
شیء راهحل وظیفه
خصوصیت | نوع | هدف |
---|---|---|
gRecaptchaResponse | رشته | رشته توکن که برای تعامل با فرم ارسال در وبسایت هدف لازم است. |
respKey | رشته | خروجی تابع "window.hcaptcha.getRespKey()" در شرایطی که قابلدسترس باشد. برخی از وبسایتها از آن برای احراز هویت بیشتر استفاده میکنند. |
userAgent | رشته | عامل کاربر مرورگر کارگر. هنگام ارسال توکن پاسخ از آن استفاده کنید. |
نمونه پاسخ
{
"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"
}