RecaptchaV3TaskProxyless: Google Recaptcha v3 çöz
Bu tip görev nesnesi, çalışanın bilgisayarında Google Recaptcha V3 çözmek için gerekir. Bu görev kendi proxy sunucularımız ve/veya çalışanlarımızın IP adresleri kullanılarak hizmetimiz tarafından gerçekleştirilir.
Lütfen Recaptcha V2-görünmez ve Recaptcha V3 arasında bir fark olduğunu unutmayın. Bunlar birbirleriyle aynı görünürler ve bu da kafa karıştırıcı olabilir. Doğru tipi belirlemenin hızlı bir yolu mevcuttur: onu V2-görünmez ve V3 olarak API’mız ile çözmeye çalışın. Denemelerden birinde bir hata alır ve diğerinde almazsınız.
Çalışanlarımızın recaptcha "skorlarını" test ediyor ve onları 3 gruba (kuyruğa) koyuyoruz: 0.3, 0.7 ve 0.9. Boşta çalışanların sayısına bağlı olarak bunların her biri az da olsa farklı fiyatlara sahip olabilir. minScore özelliğini girerek görevinizin gireceği kuyruğu belirlemiş olursunuz. Boştaki çalışanlarımızın çoğu 0.3 skoruna sahiptir ve çok azı 0.9 skoruna sahiptir.
Recaptcha V3 hakkında daha fazla bilgi bu SSS bölümünde bulunabilir.

Görev nesnesi
Özellik | Tip | Zorunlu | Amaç |
---|---|---|---|
type | Dize | Evet | RecaptchaV3TaskProxyless |
websiteURL | Dize | Evet | Bir hedef web sayfasının adresi. Web sitesinde herhangi bir yerde, hatta üye alanında dahi olabilir. Çalışanlarımız o sayfaya gitmez, bunun yerine ziyareti simüle ederler. |
websiteKey | Dize | Evet | Recaptcha web sitesi anahtarı. Anahtarı nasıl bulacağınızı bu makalede öğrenin. |
minScore | İkili | Evet | Bir çalışanı gerekli skor ile filtreler. Bu değer şunlardan biri olabilir: 0.3 0.7 0.9 |
pageAction | Dize | Hayır | Recaptcha'nın "action" değeri. Web sitesi bu parametre ile kullanıcının sayfa üzerinde ne yaptığını belirler. Örnek: grecaptcha.execute('site_key', {action:'login_test'}) |
isEnterprise | Boolean | Hayır | Bu V3’ün Enterprise API ile çözülmesini istiyorsanız bu bayrağı "true" olarak işaretleyin. Varsayılan değer "false" olmaktadır ve Recaptcha non-enterprise API ile çözülür. Takip eden örnekte olduğu gibi bir javascript çağrısı ile belirlenebilir:
grecaptcha.enterprise.execute('site_key', {..}) |
apiDomain | Dize | Hayır | Recaptcha betiğinin sunulması gereken alan adını göndermek için bu parametreyi kullanın. İki değerden yalnızca birine sahip olabilir: "www.google.com" veya "www.recaptcha.net". Ne yaptığınızı anlamadan bu parametreyi kullanmayın. |
Talep örneği
curl -i -H "Accept: application/json" \
-H "Content-Type: application/json" \
-X POST -d '{
"clientKey":"YOUR_API_KEY_HERE",
"task":
{
"type":"RecaptchaV3TaskProxyless",
"websiteURL":"http://mywebsite.com/recaptcha/test.php",
"websiteKey":"6Lc_aCMTAAAAABx7u2N0D1XnVbI_v6ZdbM6rYf16",
"minScore": 0.3,
"pageAction": "myverify",
"isEnterprise": false
},
"softId": 0
}' https://api.anti-captcha.com/createTask
<?php
//git clone git@github.com:AdminAnticaptcha/anticaptcha-php.git
include("anticaptcha.php");
include("recaptchaV3.php");
$api = new RecaptchaV3();
$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");
//recaptcha key from target website
$api->setWebsiteKey("6LfI9IsUAAAAAKuvopU0hfY8pWADfR_mogXokIIZ");
//parameters for V3
//score you would like to have
$api->setMinScore(0.9);
//optional page action
$api->setPageAction("some_action");
//Specify softId to earn 10% commission with your app.
//Get your softId here: https://anti-captcha.com/clients/tools/devcenter
$api->setSoftId(0);
//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 recaptcha token: $gResponse\n\n";
//check result, then:
$api->reportCorrectRecaptcha();
//or
//$api->reportIncorrectRecaptcha();
}
#pip3 install anticaptchaofficial
from anticaptchaofficial.recaptchav3proxyless import *
solver = recaptchaV3Proxyless()
solver.set_verbose(1)
solver.set_key("YOUR_API_KEY_HERE")
solver.set_website_url("https://website.com")
solver.set_website_key("SITE_KEY")
solver.set_page_action("home_page")
solver.set_min_score(0.9)
# 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
//npm -i @antiadmin/anticaptchaofficial
//https://github.com/AdminAnticaptcha/anticaptcha-npm
const ac = require("@antiadmin/anticaptchaofficial");
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.solveRecaptchaV3('http://DOMAIN.COM',
'WEBSITE_KEY',
0.3, //minimum score required: 0.3, 0.7 or 0.9
'PAGE_ACTION_CAN_BE_EMPTY')
.then(gresponse => {
console.log('g-response: '+gresponse);
})
.catch(error => console.log('test received error '+error));
//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 RecaptchaV3Proxyless
{
ClientKey = "YOUR_API_KEY_HERE",
WebsiteUrl = new Uri("http://makeawebsitehub.com/recaptcha/test.php"),
WebsiteKey = "6LfI9IsUAAAAAKuvopU0hfY8pWADfR_mogXokIIZ",
PageAction = "login_or_register",
IsEnterprise = false,
// Specify softId to earn 10% commission with your app.
// Get your softId here:
// https://anti-captcha.com/clients/tools/devcenter
SoftId = 0
};
api.MinScore(0.3)
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);
}
}
}
//git clone git@github.com:AdminAnticaptcha/anticaptcha-java.git
DebugHelper.setVerboseMode(true);
RecaptchaV3Proxyless api = new RecaptchaV3Proxyless();
api.setClientKey("YOUR_API_KEY_HERE");
api.setWebsiteUrl(new URL("http://getcaptchajob.com/"));
api.setWebsiteKey("6LfE4ZIUAAAAAGSYvvoszRvEC9IgFVyXwGkypn-W");
api.setPageAction("testPageAction");
api.setMinScore(0.9);
//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);
}
Yanıt örneği
{
"errorId": 0,
"taskId": 7654321
}
{
"errorId": 1,
"errorCode": "ERROR_KEY_DOES_NOT_EXIST",
"errorDescription": "Account authorization key not found in the system"
}
Çözümü getir
Görev çözüm nesnesi
Özellik | Tip | Amaç |
---|---|---|
gRecaptchaResponse | Dize | Hedef web sitesi üzerindeki gönderme formu ile etkileşime girmek için gerekli olan token dizisi. |
Yanıt örneği
{
"errorId":0,
"status":"ready",
"solution":
{
"gRecaptchaResponse":"3AHJ_VuvYIBNBW5yyv0zRYJ75VkOKvhKj9_xGBJKnQimF72rfoq3Iy-DyGHMwLAo6a3"
},
"cost":"0.001500",
"ip":"46.98.54.221",
"createTime":1472205564,
"endTime":1472205570,
"solveCount":"0"
}