HCaptchaTask: پراکسی کے ذریعے HCaptcha حل کریں
hCaptcha ڈویلپرز اپنے captcha کو “Recaptcha کا ڈراپ ان متبادل” کہتے ہیں۔ ہم نے اپنی API میں یہی چیز پیدا کرنے کی کوشش کی، لہذا ٹاسک کی خصوصیات ماسوائے “ٹائپ” خصوصیت کے بالکل RecaptchaV2Task کی طرح ہیں۔
صارف ایجنٹ کی قدر کے بارے میں اہم نوٹس۔ پہلے کاموں کے لیے اپنے صارف ایجنٹ کی وضاحت کرنا ممکن تھا، لیکن یہ بدل گیا تھا۔ اس کے بجائے ہم کارکن کا صارف ایجنٹ فراہم کرتے ہیں جسے آپ کو Hcaptcha کے ادا شدہ ورژن کو نظرانداز کرنے کے لیے استعمال کرنے کی ضرورت ہے۔ اسے تبدیل کیا گیا کیونکہ آج کل کسی دوسرے پلیٹ فارم میں اجنبی صارف ایجنٹ کی تقلید کرنا تقریباً ناممکن ہے، مثال کے طور پر Firefox میں Chrome user-agent. براؤزرز میں navigator.userAgent کے علاوہ بڑی تعداد میں ثانوی نمونے ہوتے ہیں، جو خاص طور پر ایک یا دوسرے پلیٹ فارم سے تعلق رکھتے ہیں۔

کیپچا کی مثال
ٹاسک آبجیکٹ
پراپرٹی | قسم | درکار ہے | مقصد | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
type | اسٹرنگ | ہاں | HCaptchaTask | ||||||||||||||||||||||||
websiteURL | اسٹرنگ | ہاں | مطلوبہ ویب پیج کا ایڈریس۔ ویب سائٹ پر کہیں بھی دیکھا جا سکتا ہے، یہاں تک کہ ممبر کے علاقے میں بھی۔ ہمارے کارکن وہاں نہیں جاتے، بلکہ اس کی بجائے اس دورے کو سیمولیٹ کرتے ہیں۔ | ||||||||||||||||||||||||
websiteKey | اسٹرنگ | ہاں | hCaptcha سائٹ کلید | ||||||||||||||||||||||||
proxyType | اسٹرنگ | ہاں | پراکسی کی قسم http - معمول کے مطابق http/https proxy socks4 - socks4 پراکسی socks5 - socks5 پراکسی | ||||||||||||||||||||||||
proxyAddress | اسٹرنگ | ہاں | پراکسی IP پتہ ipv4/ipv6۔ مقامی نیٹ ورکس سے کوئی ہوسٹ نام یا IP پتے نہیں۔ | ||||||||||||||||||||||||
proxyPort | انٹیگر | ہاں | Proxy port | ||||||||||||||||||||||||
proxyLogin | اسٹرنگ | نہیں | پراکسی کے لیے لاگ ان جسے منظوری درکار ہوتی ہے (بنیادی) | ||||||||||||||||||||||||
proxyPassword | اسٹرنگ | نہیں | Proxy password | ||||||||||||||||||||||||
فرسودہ اس کے بجائے، ہمارے کارکنوں سے User-Agent کا استعمال کریں جو "getTaskResult" طریقہ سے واپس کیا جاتا ہے۔ | |||||||||||||||||||||||||||
isInvisible | بُولین | نہیں | واضح کریں کہ آیا Hcaptcha پوشیدہ ہے یا نہیں۔ یہ ہمارے کارکنوں کے لیے ایک مناسب ویجیٹ پیش کرے گا۔ | ||||||||||||||||||||||||
enterprisePayload | آبجیکٹ | نہیں | اضافی پیرامیٹرز جو ہم انٹرپرائز ورژن کے لیے Hcaptcha ویجیٹ کو رینڈر کرنے کے لیے استعمال کریں گے۔
|
درخواست کی مثال
CURL
curl -i -H "Accept: application/json" \
-H "Content-Type: application/json" \
-X POST -d '{
"clientKey":"YOUR_API_KEY_HERE",
"task":
{
"type":"HCaptchaTask",
"websiteURL":"https://hcaptcha.com/",
"websiteKey":"00000000-0000-0000-0000-000000000000",
"proxyType":"http",
"proxyAddress":"8.8.8.8",
"proxyPort":8080,
"proxyLogin":"proxyLoginHere",
"proxyPassword":"proxyPasswordHere",
"isInvisible": false,
},
"softId": 0
}' https://api.anti-captcha.com/createTask
# Enterprise version:
curl -i -H "Accept: application/json" \
-H "Content-Type: application/json" \
-X POST -d '{
"clientKey":"YOUR_API_KEY_HERE",
"task":
{
"type":"HCaptchaTask",
"websiteURL":"https://hcaptcha.com/",
"websiteKey":"00000000-0000-0000-0000-000000000000",
"proxyType":"http",
"proxyAddress":"8.8.8.8",
"proxyPort":8080,
"proxyLogin":"proxyLoginHere",
"proxyPassword":"proxyPasswordHere",
"isInvisible": false,
"enterprisePayload": {
"rqdata": "rqdata value from target website",
"sentry": true
}
},
"softId": 0
}' https://api.anti-captcha.com/createTask
PHP
<?php
//git clone git@github.com:AdminAnticaptcha/anticaptcha-php.git
include("anticaptcha.php");
include("hcaptcha.php");
$api = new HCaptcha();
$api->setVerboseMode(true);
//your anti-captcha.com account key
$api->setKey("YOUR_API_KEY_HERE");
//target website address
$api->setWebsiteURL("http://makeawebsitehub.com/recaptcha/test.php");
//hcaptcha key from target website
$api->setWebsiteKey("6LfI9IsUAAAAAKuvopU0hfY8pWADfR_mogXokIIZ");
//proxy access parameters
// DO NOT USE PURCHASED/RENTED PROXIES ON PROXY SERVICES!!!
// THEY WILL NOT WORK!
// USE ONLY PROXIES YOU INSTALL YOURSELF ON YOUR OWN SERVER OR FAST VPS
// USE PROPER PROXY SOFTWARE LIKE SQUID !
// INSTALLATION INSTRUCTIONS:
// https://anti-captcha.com/apidoc/articles/how-to-install-squid
$api->setProxyType("http");
$api->setProxyAddress("8.8.8.8");
$api->setProxyPort(1234);
//optional login and password
$api->setProxyLogin("login");
$api->setProxyPassword("password");
//Specify softId to earn 10% commission with your app.
//Get your softId here: https://anti-captcha.com/clients/tools/devcenter
$api->setSoftId(0);
//optional invisible Hcaptcha flag
//$api->setIsInvisible();
//set Enterprise parameters this way:
//$api->setEnterprisePayload([
// "rqdata" => "somerqdata",
// "sentry" => true
//]);
//create task in API
if (!$api->createTask()) {
$api->debout("API v2 send failed - ".$api->getErrorMessage(), "red");
return false;
}
$taskId = $api->getTaskId();
//wait in a loop for max 300 seconds till task is solved
if (!$api->waitForResult(300)) {
echo "could not solve captcha\n";
echo $api->getErrorMessage()."\n";
} else {
$gResponse = $api->getTaskSolution();
echo "\n";
echo "your hcaptcha token: $gResponse\n\n";
}
Python
#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
NodeJS
//npm install @antiadmin/anticaptchaofficial
//https://github.com/AdminAnticaptcha/anticaptcha-npm
const ac = require("@antiadmin/anticaptchaofficial");
//set Hcaptcha Enterprise payload if any
const enterprisePayload = {
"rqdata": "rqdata from target website",
"sentry": true
//etc
}
//if it is non-Enteprise, set to null
//const enterprisePayload = null;
//set to true if you want us to render it in invisible mode
const isInvisible = false;
ac.setAPIKey('YOUR_API_KEY_HERE');
//Specify softId to earn 10% commission with your app.
//Get your softId here: https://anti-captcha.com/clients/tools/devcenter
ac.setSoftId(0);
ac.solveHCaptchaProxyOn('http://DOMAIN.COM',
'WEBSITE_KEY',
'http', //http, socks4, socks5
'PROXY_ADDRESS',
'PROXY_PORT',
'PROXY_LOGIN',
'PROXY_PASSWORD',
'',
'some=cookies',
enterprisePayload,
isInvisible)
.then(gresponse => {
console.log('g-response: '+gresponse);
})
.catch(error => console.log('test received error '+error));
C#
//git clone git@github.com:AdminAnticaptcha/anticaptcha-csharp
using System;
using Anticaptcha_example.Api;
using Anticaptcha_example.Helper;
using Newtonsoft.Json.Linq;
namespace Anticaptcha_example
{
internal class Program
{
private static void Main() {
DebugHelper.VerboseMode = true;
var api = new HCaptcha
{
ClientKey = "YOUR_API_KEY_HERE",
WebsiteUrl = new Uri("http://makeawebsitehub.com/recaptcha/test.php"),
WebsiteKey = "6LfI9IsUAAAAAKuvopU0hfY8pWADfR_mogXokIIZ",
ProxyAddress = "xxx.xx.xx.xx",
ProxyPort = 1234,
ProxyLogin = "login",
ProxyPassword = "password",
UserAgent = "Opera 6.0",
// Specify softId to earn 10% commission with your app.
// Get your softId here:
// https://anti-captcha.com/clients/tools/devcenter
SoftId = 0
};
// use to set invisible mode
//api.IsInvisible = true
// use to set Hcaptcha Enterprise parameters like rqdata, sentry, apiEndpoint, endpoint, reportapi, assethost, imghost
//api.EnterprisePayload.Add("rqdata", "rqdata value from target website");
//api.EnterprisePayload.Add("sentry", "true");
if (!api.CreateTask())
DebugHelper.Out("API v2 send failed. " + api.ErrorMessage, DebugHelper.Type.Error);
else if (!api.WaitForResult())
DebugHelper.Out("Could not solve the captcha.", DebugHelper.Type.Error);
else
DebugHelper.Out("Result: " + api.GetTaskSolution().GRecaptchaResponse, DebugHelper.Type.Success);
}
}
}
Java
//git clone git@github.com:AdminAnticaptcha/anticaptcha-java.git
package com.anti_captcha;
import com.anti_captcha.Api.HCaptcha;
import com.anti_captcha.Helper.DebugHelper;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.Iterator;
import java.util.concurrent.ThreadLocalRandom;
public class Main {
public static void main(String[] args) throws InterruptedException, MalformedURLException, JSONException {
DebugHelper.setVerboseMode(true);
HCaptcha api = new HCaptcha();
api.setClientKey("API_KEY_HERE");
api.setWebsiteUrl(new URL("http://makeawebsitehub.com/HCaptcha/test.php"));
api.setWebsiteKey("6LfI9IsUAAAAAKuvopU0hfY8pWADfR_mogXokIIZ");
// proxy access parameters
// DO NOT USE PURCHASED/RENTED PROXIES WITH PROXY SERVICES!!!
// THEY WILL NOT WORK!
// USE ONLY PROXIES YOU INSTALL YOURSELF ON YOUR OWN SERVER OR FAST VPS
// USE PROPER PROXY SOFTWARE LIKE SQUID !
// INSTALLATION INSTRUCTIONS:
// https://anti-captcha.com/apidoc/articles/how-to-install-squid
api.setProxyType(NoCaptcha.ProxyTypeOption.HTTP);
api.setProxyAddress("xx.xxx.xx.xx");
api.setProxyPort(8282);
api.setProxyLogin("login");
api.setProxyPassword("password");
// uncomment to tell API that HCaptcha is in invisible mode
// api.setIsInvisible(true);
// uncomment and use for HCaptcha Enterprise version if you need to set parameters like rqdata, sentry, apiEndpoint, endpoint, reportapi, assethost, imghost
// JSONObject enterprisePayload = new JSONObject();
// try {
// enterprisePayload.put("rqdata", "rqdata from the target website");
// enterprisePayload.put("sentry", Boolean.TRUE);
// enterprisePayload.put("apiEndpoint", "https://...");
// } catch (Exception e) {
// DebugHelper.out("JSON error: "+e.getMessage(), DebugHelper.Type.ERROR);
// return;
// }
// api.setEnterprisePayload(enterprisePayload);
//Specify softId to earn 10% commission with your app.
//Get your softId here: https://anti-captcha.com/clients/tools/devcenter
api.setSoftId(0);
if (!api.createTask()) {
DebugHelper.out(
"API v2 send failed. " + api.getErrorMessage(),
DebugHelper.Type.ERROR
);
} else if (!api.waitForResult()) {
DebugHelper.out("Could not solve the captcha.", DebugHelper.Type.ERROR);
} else {
DebugHelper.out("Result: " + api.getTaskSolution().getGRecaptchaResponse(), DebugHelper.Type.SUCCESS);
}
}
}
جواب کی مثال
خرابیوں کے بغیر JSON
{
"errorId": 0,
"taskId": 7654321
}
خرابیوں کے ساتھ JSON
{
"errorId": 1,
"errorCode": "ERROR_KEY_DOES_NOT_EXIST",
"errorDescription": "Account authorization key not found in the system"
}
حل بازیافت کریں
حل کی درخواست کرنے کے لیے طریقہ کار getTaskResult استعمال کریں۔ پہلی درخواست بھیجنے سے پہلے کارکن کو کچھ وقت دیں، جیسے 5 سیکنڈ۔ اگر کارکن ابھی بھی مصروف ہے تو 3 سیکنڈ میں دوبارہ کوشش کریں۔
ٹاسک کے حل کا آبجیکٹ
پراپرٹی | قسم | مقصد |
---|---|---|
gRecaptchaResponse | اسٹرنگ | ٹوکن اسٹرنگ جو مطلوبہ ویب سائٹ پر جمع کروانے کے فارم کے ساتھ تعامل کے لیے درکار ہوتا ہے۔ |
respKey | اسٹرنگ | "window.hcaptcha.getRespKey()" فنکشن کے دستیاب ہونے پر آؤٹ پٹ۔ کچھ ویب سائٹس اسے اضافی تصدیق کے لیے استعمال کرتی ہیں۔ |
userAgent | اسٹرنگ | کارکن کے براؤزر کا صارف ایجنٹ۔ جب آپ جوابی ٹوکن جمع کروائیں تو اسے استعمال کریں۔ |
جواب کی مثال
خرابیوں کے بغیر JSON
{
"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"
}