RecaptchaV2EnterpriseTask: giải Google Recaptcha V2 Enterprise có proxy
Loại tác vụ này dùng để giải Google Recaptcha Enterprise V2 qua proxy được cung cấp.
Loại này gần giống với RecaptchaV2Task, ngoại trừ việc các tác vụ được giải bằng Enterprise API và được giao cho những nhân viên có điểm Recaptcha V3 cao nhất. Để biết thêm thông tin về Recaptcha Enterprise, hãy truy cập phần Câu hỏi thường gặp này.


Ví dụ về Recaptcha V2 Enterprise. Về trực quan thì Recaptcha V2 Enterprise tương tự phiên bản phi doanh nghiệp.
Đối tượng tác vụ
Thuộc tính | Loại | Bắt buộc | Mục đích |
---|---|---|---|
type | Chuỗi | Có | RecaptchaV2EnterpriseTask |
websiteURL | Chuỗi | Có | Địa chỉ trang web mục tiêu. Có thể ở bất kỳ đâu trên trang web, ngay cả trong khu vực thành viên. Nhân viên chúng tôi không điều hướng đến khu vực đó mà chỉ giả lập việc truy cập. |
websiteKey | Chuỗi | Có | Khóa trang web Recaptcha. Tìm hiểu cách tìm khóa trong bài viết này. |
enterprisePayload | Đối tượng | Không | Các tham số bổ sung, được chuyển đến phương thức "grecaptcha.enterprise.render" cùng với khóa trang web. Ví dụ về những thông tin bạn nên tìm kiếm:
JSON không lỗi |
apiDomain | Chuỗi | Không | Sử dụng tham số này để gửi tên miền mà từ đó tập lệnh Recaptcha sẽ được phân phát. Chỉ có thể có một trong hai giá trị: "www.google.com" hoặc "www.recaptcha.net". Không sử dụng tham số này trừ khi bạn hiểu mình đang làm gì. |
proxyType | Chuỗi | Có | Loại proxy http - proxy http/https thường socks4 - socks4 proxy socks5 - socks5 proxy |
proxyAddress | Chuỗi | Có | Địa chỉ IP Proxy ipv4/ipv6. Không có tên máy chủ hoặc địa chỉ IP từ mạng cục bộ. |
proxyPort | Số nguyên | Có | Cổng proxy |
proxyLogin | Chuỗi | Không | Thông tin đăng nhập cho proxy yêu cầu cấp phép (cơ bản) |
proxyPassword | Chuỗi | Không | Mật khẩu proxy |
userAgent | Chuỗi | Có | Chuỗi nhận dạng trình duyệt dùng trong mô phỏng. Bạn phải sử dụng chữ ký của một trình duyệt hiện đại, nếu không Google sẽ yêu cầu bạn "cập nhật trình duyệt". |
cookies | Chuỗi | Không | Cookie bổ sung, được chúng tôi sử dụng tại các miền của Google. |
Ví dụ về yêu cầu
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);
}
}
}
Ví dụ về phản hồi
JSON không lỗi
{
"errorId": 0,
"taskId": 7654321
}
JSON có lỗi
{
"errorId": 1,
"errorCode": "ERROR_KEY_DOES_NOT_EXIST",
"errorDescription": "Account authorization key not found in the system"
}
Truy xuất lời giải
Sử dụng phương thức getTaskResult để yêu cầu giải. Cho nhân viên một khoảng thời gian, chẳng hạn như 5 giây, trước khi tạo yêu cầu đầu tiên. Nếu nhân viên vẫn bận, hãy thử lại sau 3 giây.
Đối tượng giải của tác vụ
Thuộc tính | Loại | Mục đích |
---|---|---|
gRecaptchaResponse | Chuỗi | Chuỗi mã thông báo bắt buộc để tương tác với biểu mẫu gửi trên trang web mục tiêu. |
Ví dụ về phản hồi
JSON không lỗ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"
}