RecaptchaV2EnterpriseTask: selesaikan Google Recaptcha Enterprise v2 dengan proxy
Jenis tugas ini adalah untuk menyelesaikan Google Recaptcha Enteprise v2 via proxy yang disediakan.
Hampir sama dengan RecaptchaV2Task, kecuali tugas diselesaikan menggunakan Enterprise API dan ditugaskan ke pekerja dengan skor Recaptcha v3 terbaik. Untuk informasi selengkapnya tentang Recaptcha Enterprise, bacalah bagian FAQ ini.


Contoh Recaptcha Enterprise v2. Secara visual identik dengan versi non-enterprise.
Objek tugas
Properti | Jenis | Wajib | Tujuan |
---|---|---|---|
type | String | Ya | RecaptchaV2EnterpriseTask |
websiteURL | String | Ya | Alamat halaman web target. Dapat berada di mana pun di situs web, bahkan di area anggota. Pekerja kami tidak menjelajahinya, tetapi menyimulasikan kunjungan. |
websiteKey | String | Ya | Kunci situs web Recaptcha. Pelajari cara menemukannya dalam artikel ini. |
enterprisePayload | Object | Tidak | Parameter tambahan yang harus dilewatkan ke metode "grecaptcha.enterprise.render" beserta sitekey. Contoh yang harus Anda cari:
JSON tanpa kesalahan |
apiDomain | String | Tidak | Gunakan parameter ini untuk mengirim nama domain dari mana skrip Recaptcha harus disajikan. Hanya dapat memiliki satu dari dua nilai: "www.google.com" atau "www.recaptcha.net". Jangan gunakan parameter ini kecuali Anda memahami apa yang Anda lakukan. |
proxyType | String | Ya | Jenis proxy http - proxy http/https biasa socks4 - proxy socks4 socks5 - proxy socks5 |
proxyAddress | String | Ya | Alamat IP proxy IPv4/IPv6. Tidak ada nama host atau alamat IP dari jaringan lokal. |
proxyPort | Integer | Ya | Port proxy |
proxyLogin | String | Tidak | Log masuk untuk proxy yang membutuhkan otorisasi (dasar) |
proxyPassword | String | Tidak | Kata sandi proxy |
userAgent | String | Ya | User-agent browser yang digunakan dalam emulasi. Anda harus menggunakan tanda tangan browser modern. Jika tidak, Google akan meminta Anda untuk "memperbarui browser". |
cookies | String | Tidak | Cookie tambahan yang harus kami gunakan di domain Google. |
Contoh permintaan
CURL
curl -i -H "Accept: application/json" \
-H "Content-Type: application/json" \
-X POST -d '{
"clientKey":"YOUR_API_KEY_HERE",
"task":
{
"type":"RecaptchaV2EnterpriseTask",
"websiteURL":"http://mywebsite.com/recaptcha/test.php",
"websiteKey":"6Lc_aCMTAAAAABx7u2N0D1XnVbI_v6ZdbM6rYf16",
"enterprisePayload": {
"s": "SOME_ADDITIONAL_TOKEN"
},
"proxyType":"http",
"proxyAddress":"8.8.8.8",
"proxyPort":8080,
"proxyLogin":"proxyLoginHere",
"proxyPassword":"proxyPasswordHere",
"userAgent":"MODERN_USER_AGENT_HERE"
},
"softId": 0
}' https://api.anti-captcha.com/createTask
PHP
<?php
//git clone git@github.com:AdminAnticaptcha/anticaptcha-php.git
include("anticaptcha.php");
include("recaptchaV2Enterprise.php");
$api = new RecaptchaV2Enterprise();
$api->setVerboseMode(true);
//your anti-captcha.com account key
$api->setKey("YOUR_API_KEY_HERE");
//target website address
$api->setWebsiteURL("http://enteprisedomain.com/recaptcha/test.php");
//recaptcha key from target website
$api->setWebsiteKey("ENTEPRISE_SITEKEY_HERE");
//optional custom payload for grecaptcha.enterprise.render
$api->setEnterprisePayload(["s" => "TEMPORARY_TOKEN_VALUE"]);
//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");
//browser header parameters
$api->setUserAgent("Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116");
//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 "your recaptcha token: $gResponse\n\n";
}
Python
#pip3 install anticaptchaofficial
from anticaptchaofficial.recaptchav2enterpriseproxyon import *
solver = recaptchaV2EnterpriseProxyon()
solver.set_verbose(1)
solver.set_key("YOUR_API_KEY_HERE")
# solver.set_enterprise_payload({"s": "sometoken"})
solver.set_website_url("https://website.com")
solver.set_website_key("SITE_KEY")
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")
# 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");
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.solveRecaptchaV2EnterpriseProxyOn(
'http://DOMAIN.COM',
'WEBSITE_KEY',
{
"s" : "SOME_TOKEN",
"any_custom_parameter" : "string_number_or_boolean"
},
'http', //http, socks4, socks5
'PROXY_ADDRESS',
'PROXY_PORT',
'PROXY_LOGIN',
'PROXY_PASSWORD',
'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116',
'some=cookies')
.then(gresponse => {
console.log('g-response: '+gresponse);
})
.catch(error => console.log('test received error '+error));
C#
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 RecaptchaV2Enterprise
{
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
};
api.EnterprisePayload.Add("s", "SOME_UNDOCUMENTED_TOKEN");
api.EnterprisePayload.Add("blabla", "ANOTHER TOKEN");
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.RecaptchaV2Enterprise;
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);
RecaptchaV2Enterprise api = new RecaptchaV2Enterprise();
api.setClientKey("YOUR_API_KEY_HERE");
api.setWebsiteUrl(new URL("http://http.myjino.ru/recaptcha/test-get.php"));
api.setWebsiteKey("6Lc_aCMTAAAAABx7u2W0WPXnVbI_v6ZdbM6rYf16");
api.setUserAgent("Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 " +
"(KHTML, like Gecko) Chrome/52.0.2743.116");
// proxy access parameters
// DO NOT USE PURCHASED/RENTED PROXIES WITH PROXY SERVICES!!!
api.setProxyType(RecaptchaV2.ProxyTypeOption.HTTP);
api.setProxyAddress("xx.xxx.xx.xx");
api.setProxyPort(8282);
api.setProxyLogin("login");
api.setProxyPassword("password");
//optional payload, please look for RecaptchaV2Enterprise documentation regarding it
JSONObject enterprisePayload = new JSONObject();
try {
enterprisePayload.put("s", "SOME_UNDOCUMENTED_TOKEN_VALUE");
} 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);
}
}
}
Contoh respons
JSON tanpa kesalahan
{
"errorId": 0,
"taskId": 7654321
}
JSON dengan kesalahan
{
"errorId": 1,
"errorCode": "ERROR_KEY_DOES_NOT_EXIST",
"errorDescription": "Account authorization key not found in the system"
}
Dapatkan solusi
Gunakan metode getTaskResult untuk meminta solusi. Berikan waktu pada pekerja, sekitar 5 detik, sebelum membuat permintaan pertama. Jika pekerja masih sibuk, ulangi dalam 3 detik.
Objek solusi tugas
Properti | Jenis | Tujuan |
---|---|---|
gRecaptchaResponse | String | String token yang dibutuhkan untuk berinteraksi dengan formulir pengiriman di situs web target. |
Contoh respons
JSON tanpa kesalahan
{
"errorId":0,
"status":"ready",
"solution":
{
"gRecaptchaResponse":"3AHJ_VuvYIBNBW5yyv0zRYJ75VkOKvhKj9_xGBJKnQimF72rfoq3Iy-DyGHMwLAo6a3"
},
"cost":"0.001500",
"ip":"46.98.54.221",
"createTime":1472205564,
"endTime":1472205570,
"solveCount":"0"
}