Menu

Rozwiązywanie Recaptcha V3

Ten typ obiektu zadania jest wymagany w celu rozwiązania Google Recaptcha V3 na komputerze pracownika. Zadanie będzie rozwiązane z użyciem naszej usługi, naszych serwerów proxy i/lub adresów IP pracowników.

Należy zwrócić uwage, że istnieje różnica pomiędzy Recaptcha V2-invisible oraz Recaptcha V3. Wyglądają tak samo, co może być mylące. Szybki sposób rozróżnienia: spróbuj rozwiązać za pomocą naszego API jako V2-invisible i jako V3. Jedna z prób okaże się błędna, zaś druga powinna zadziałać.

Testujemy naszych pracowników pod kątem ich punktacji "score" recaptcha i umieszczamy w trzech grupach (kolejkach): 0.3, 0.7 i 0.9. Każda z grup wyróżnia się nieco inną ceną ze względu na liczbę wolnych pracowników. Przekazując atrybut "minScore" określasz kolejkę do której trafi twoje zadanie. Większość naszych dostępnych pracowników ma punktację 0.3, zaś mniejszość - 0.9.

Recaptcha v3 example
Przykład Recaptcha v3. Zazwyczaj w prawym dolnym rogu strony znajduje się logo. Właściciele stron mogą w prosty sposób usunąć je przy pomocy Javascript.
Python
Node.js
Go
PHP
Java
C#
bash

Jak rozwiązać reCaptcha V3 w 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)

Jak rozwiązać reCaptcha V3 w 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());

Jak rozwiązać reCaptcha V3 w 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)
}

Jak rozwiązać reCaptcha V3 w 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();

}

Jak rozwiązać reCaptcha V3 w 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);
}

Jak rozwiązać reCaptcha V3 w 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);

        }
    }
}

Jak rozwiązać reCaptcha V3 w 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

Obiekt typu zadanie

Właściwość/atrybut Typ Wymagany Przeznaczenie
type Łańcuch znaków (String) Tak RecaptchaV3TaskProxyless
websiteURL Łańcuch znaków (String) Tak Adres docelowej strony. Może znajdować się w dowolnym miejscu witryny, włącznie ze strefami dla zalogowanych. Nasi pracownicy nie muszą tam wchodzić, gdyż wizyta jest symulowana.
websiteKey Łańcuch znaków (String) Tak Klucz strony Recaptcha. O tym jak pozyskać go, dowiedzieć można się w tym artykule.
minScore Double Tak Filtruje pracowników o określonej punktacji. Można tu podać jedną z następujących wartości:
0.3
0.7
0.9
pageAction Łańcuch znaków (String) Nie
Wartość "akcji" Recaptcha. Właściciele witryn używają tego parametru, aby określić, co użytkownicy robią na stronie. Przykład:

grecaptcha.execute('site_key', {action:'login_test'})
isEnterprise Logiczny (Boolean) Nie Tę flagę należy ustawić na "true", jeśli chcesz, by dany V3 rozwiązano za pomocą API Enterprise. Domyślna wartość to "false" i Recaptcha jest rozwiązywana przy pomocy API non-enterprise. Można to określić wywołaniem javascript, jak w poniższym przykładzie:

grecaptcha.enterprise.execute('site_key', {..})
apiDomain Łańcuch znaków (String) Nie Użyj tego parametru, aby wysłać nazwę domeny, z której powinien być zaserwowany skrypt Recaptcha. Może mieć tylko jedną z dwóch wartości: "www.google.com" lub "www.recaptcha.net". Nie używaj tego parametru, jeśli nie rozumiesz, co robi.

Obiekt typu rozwiązanie zadania

Właściwość/atrybut Typ Przeznaczenie
gRecaptchaResponse Łańcuch znaków (String) Łańcuch znaków - token wymagany do interakcji z formularzem wysyłalnym na docelowej stronie.
userAgent Łańcuch znaków (String) User-Agent przeglądarki pracownika. Użyj go podczas przesyłania tokena odpowiedzi.

Przykład odpowiedzi

{
    "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"
}