Menu

حل‌کردن ریکپچا V3

این نوع شیء وظیفه برای حل‌کردن Google Recaptcha V3 در کامپیوتر کارگر لازم است. این وظیفه توسط سرویس ما با استفاده از سرورهای پروکسی خودمان و/یا آدرس‌های IP کارگران ما اجرا خواهد شد.

لطفاً توجه کنید که تفاوتی بین Recaptcha V2 نامرئی و Recaptcha V3 وجود دارد. آنها ظاهرا شبیه هم هستند و شاید با هم اشتباه گرفته شوند. یک روش سریع برای تعیین نوع صحیح ریکپچا این است: سعی کنید آن را با API ما به‌عنوان V2 نامرئی و V3 حل کنید. در یکی از این روش‌ها یک خطا دریافت خواهید کرد ولی در روش دیگر هیچ خطایی اعلام نمی‌شود.

ما کارگران خودمان را از نظر «امتیاز» ریکپچایشان تست می‌کنیم و آنها را در ۳ صف (queues) قرار می‌دهیم: 0.3، 0.7 و 0.9. هر کدام از آنها به دلیل تعداد کارگران بیکار، قیمت‌های متفاوتی دارند. با انتقال خصوصیت "minScore" می‌توانید صفی را تعیین کنید که وظیفه شما به آن می‌رود. اغلب کارگران قابل‌دسترس ما امتیاز ۰.۳ دارند و تعداد کمی از آنها امتیاز ۰.۹ دارند.

Recaptcha v3 example
یک مثال از Recaptcha v3. معمولاً یک نشان لوگو در گوشه پایین راست صفحه وجود دارد. به‌سادگی می‌توان آن را با جاوا اسکریپت حذف کرد.
Python
Node.js
Go
PHP
Java
C#
bash

چگونه reCaptcha V3 را در Python حل کنیم

#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)
    # user-agent in case you need it:
    print("user-agent: "+solver.get_user_agent())
else:
    print("task finished with error "+solver.error_code)

چگونه reCaptcha V3 را در Node.js حل کنیم

//npm install @antiadmin/anticaptchaofficial
//https://github.com/anti-captcha/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));

// in case you need it
console.log("worker's user-agent:");
console.log(ac.getUserAgent());

چگونه reCaptcha V3 را در Go حل کنیم

// Install with:
// go get github.com/anti-captcha/anticaptcha-go
package main

import (
    "fmt"
    "github.com/anti-captcha/anticaptcha-go"
    "log"
)

func main() {
    // Create API client and set the API Key
    ac := anticaptcha.NewClient("API_KEY_HERE")

    // set to 'false' to turn off debug output
    ac.IsVerbose = true

    // Specify softId to earn 10% commission with your app.
    // Get your softId here: https://anti-captcha.com/clients/tools/devcenter
    //ac.SoftId = 1187

    // Make sure the API key funds balance is positive
    balance, err := ac.GetBalance()
    if err != nil {
        log.Fatal(err)
        // Exit program to make sure you don't DDoS API with requests, while having empty balance
        return
    }
    fmt.Println("Balance:", balance)

    // Solve Recaptcha V3
    solution, err := ac.SolveRecaptchaV3(anticaptcha.RecaptchaV3{
        WebsiteURL: "https://onlyfans.com/",
        WebsiteKey: "6LcvNcwdAAAAAMWAuNRXH74u3QePsEzTm6GEjx0J",
        PageAction: "somefun",
        MinScore:   0.9
    })
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println("Recaptcha g-response token:", solution)
    // In case you need the worker's user-agent
    fmt.Println("User-Agent:", ac.WorkersUserAgent)
}

چگونه reCaptcha V3 را در PHP حل کنیم

//git clone https://github.com/anti-captcha/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";
    echo "worker's user-agent in case you need it:\n";
    echo $api->getWorkersUserAgent()."\n";

    //check result, then:
    $api->reportCorrectRecaptcha();
    //or
    //$api->reportIncorrectRecaptcha();

}

چگونه reCaptcha V3 را در Java حل کنیم

//git clone https://github.com/anti-captcha/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);
}

چگونه reCaptcha V3 را در C# حل کنیم

//git clone https://github.com/anti-captcha/anticaptcha-csharp.git

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);

        }
    }
}

چگونه reCaptcha V3 را در bash حل کنیم

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

شیء وظیفه

خصوصیت نوع ضروری هدف
type رشته بله RecaptchaV3TaskProxyless
websiteURL رشته بله آدرس صفحه وب هدف. می‌تواند در هرجایی از وب‌سایت حتی بخش اعضا قرار گرفته باشد. کارگران ما به آنجا نمی‌روند بلکه در عوض بازدید را شبیه‌سازی می‌کنند.
websiteKey رشته بله کلید وب‌سایت ریکپچا. شما در مقاله این می‌آموزید که چگونه آن پیدا کنید.
minScore اعشاری(دابل) بله کارگرها را بر اساس یک امتیاز خاص فیلتر می‌کند. می‌تواند یکی از مقدارهای زیر را بگیرد:
0.3
0.7
0.9
pageAction رشته خیر
مقدار "action" در ریکپچا. صاحبان وب‌سایت از این پارامتر برای تعریف کارهایی استفاده می‌کنند که کاربران در صفحه انجام می‌دهند. مثال:

grecaptcha.execute('site_key', {action:'login_test'})
isEnterprise بولی خیر اگر نیاز دارید که این کپچای V3 با Enterprise API حل شود، این پرچم را برابر با "true" قرار دهید. مقدار پیش‌فرض آن "false" است و ریکپچا با API غیر Enterprise حل می‌شود. می‌توان آن را با یک فراخوان جاوا اسکریپت مثل آنچه در مثال زیر می‌بینید، تعیین کنید:

grecaptcha.enterprise.execute('site_key', {..})
apiDomain رشته خیر این پارامتر را برای ارسال نام دامنه‌ای به کار ببرید که اسکریپت ریکپچا باید از آن استفاده کند. این پارامتر می‌تواند فقط یکی از این دو مقدار را داشته باشد: "www.google.com" یا "www.recaptcha.net". اگر نمی‌دانید در حال انجام چه کاری هستید، از این پارامتر استفاده نکنید.

شیء راه‌حل وظیفه

خصوصیت نوع هدف
gRecaptchaResponse رشته رشته توکن که برای تعامل با فرم ارسال در وب‌سایت هدف لازم است.
userAgent رشته عامل کاربر مرورگر کارگر. هنگام ارسال توکن پاسخ از آن استفاده کنید.

نمونه پاسخ

{
    "errorId":0,
    "status":"ready",
    "solution":
    {
        "gRecaptchaResponse":"3AHJ_VuvYIBNBW5yyv0zRYJ75VkOKvhKj9_xGBJKnQimF72rfoq3Iy-DyGHMwLAo6a3",
        "userAgent":"Mozilla\5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"
    },
    "cost":"0.001500",
    "ip":"46.98.54.221",
    "createTime":1472205564,
    "endTime":1472205570,
    "solveCount":"0"
}