Menu

Résoudre Recaptcha V2

Ce type de tâche résout Google Recaptcha V2 sans proxy. La tâche sera exécutée en utilisant nos propres serveurs proxy et/ou les adresses IP des travailleurs.

La tâche est exécutée à l'aide de nos propres serveurs proxy et/ou des adresses IP des travailleurs. Pour l'instant, Recaptcha n'est pas protégé contre les situations où une énigme est résolue sur une adresse IP et où le formulaire avec la réponse g est soumis à partir d'une autre adresse IP. L'API de Google ne fournit pas l'adresse IP de la personne qui a résolu son Recaptcha. Si cela change, vous pouvez toujours utiliser notre type de tâche standard pour cela - RecaptchaV2Task.

Recaptcha V2 funny example
Recaptcha V2 checkbox
Exemple de Recaptcha V2
Python
Node.js
Go
PHP
Java
Kotlin
C#
C++
Rust
Ruby
bash

Comment résoudre reCaptcha V2 en Python

#pip3 install anticaptchaofficial

from anticaptchaofficial.recaptchav2proxyless import *

solver = recaptchaV2Proxyless()
solver.set_verbose(1)
solver.set_key("YOUR_API_KEY_HERE")
solver.set_website_url("https://website.com")
solver.set_website_key("SITE_KEY")
#set optional custom parameter which Google made for their search page Recaptcha v2
#solver.set_data_s('"data-s" token from Google Search results "protection"')

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

Comment résoudre reCaptcha V2 en Node.js

//npm install @antiadmin/anticaptchaofficial
//https://github.com/anti-captcha/anticaptcha-npm

const ac = require("@antiadmin/anticaptchaofficial");

//set API key
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);

//set optional custom parameter which Google made for their search page Recaptcha v2
//ac.settings.recaptchaDataSValue = '"data-s" token from Google Search results "protection"'

ac.solveRecaptchaV2Proxyless('http://DOMAIN.COM', 'WEBSITE_KEY')
    .then(gresponse => {
        console.log('g-response: '+gresponse);
        console.log('google cookies:');
        console.log(ac.getCookies());
    })
    .catch(error => console.log('test received error '+error));

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

Comment résoudre reCaptcha V2 en 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 V2 without proxy
    solution, err := ac.SolveRecaptchaV2(anticaptcha.RecaptchaV2{
        WebsiteURL:  "https://huev.com/",
        WebsiteKey:  "6Lcyu8UZAAAAACwSh6Xf58WrNXTu0LLu4F85xf20",
        IsInvisible: false, // Set to 'true' if you are solving an invisible Recaptcha V2
        DataSValue:  "",    // Fill this value if you are solving a ReCaptcha V2 with the 'data-s' parameter, typically found at google.com websites
    })
    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)
}

Comment résoudre reCaptcha V2 en PHP

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

include("anticaptcha.php");
include("recaptchav2proxyless.php");

$api = new RecaptchaV2Proxyless();
$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");

//optional custom parameter which Google made for their search page Recaptcha v2
//$api->setDataSValue("'data-s' token from Google Search");

//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";

}

Comment résoudre reCaptcha V2 en Java

// GitHub: https://github.com/anti-captcha/anticaptcha-java
//
// Maven, add to pom.xml:
//   <dependency>
//     <groupId>com.anti-captcha</groupId>
//     <artifactId>anticaptcha</artifactId>
//     <version>1.0.0</version>
//   </dependency>
//
// Gradle, add to build.gradle:
//   implementation "com.anti-captcha:anticaptcha:1.0.0"

import com.anti_captcha.Api.RecaptchaV2Proxyless;
import com.anti_captcha.Helper.DebugHelper;

public class Main {

    public static void main(String[] args) throws InterruptedException {
        // Set to false to turn the debug output off
        DebugHelper.setVerboseMode(true);

        RecaptchaV2Proxyless api = new RecaptchaV2Proxyless();
        api.setClientKey("YOUR_API_KEY_HERE");

        // Specify softId to earn 10% commission with your app.
        // Get your softId here: https://anti-captcha.com/clients/tools/devcenter
        api.setSoftId(0);

        api.setWebsiteUrl("http://makeawebsitehub.com/recaptcha/test.php");
        api.setWebsiteKey("6LfI9IsUAAAAAKuvopU0hfY8pWADfR_mogXokIIZ");

        // api.setIsInvisible(true);                       // invisible Recaptcha V2
        // api.setRecaptchaDataSValue("data-s value");     // typical for google.com websites

        // Make sure the API key funds balance is positive
        Double balance = api.getBalance();
        if (balance == null || balance <= 0) {
            // Stop here to make sure you don't DDoS the API while having empty balance
            DebugHelper.out("Balance error: " + api.getErrorMessage(), DebugHelper.Type.ERROR);
            return;
        }
        DebugHelper.out("Balance: " + balance, DebugHelper.Type.SUCCESS);

        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("Recaptcha g-response token: " + api.getTaskSolution().getGRecaptchaResponse(), DebugHelper.Type.SUCCESS);
            DebugHelper.out("Worker's user-agent in case you need it: " + api.getTaskSolution().getUserAgent(), DebugHelper.Type.SUCCESS);
        }
    }
}

Comment résoudre reCaptcha V2 en Kotlin

// GitHub: https://github.com/anti-captcha/anticaptcha-kotlin
//
// Gradle, add to build.gradle.kts:
//   implementation("com.anti-captcha:anticaptcha-kotlin:1.0.0")

import com.anticaptcha.AnticaptchaClient
import com.anticaptcha.AnticaptchaException
import com.anticaptcha.ApiException
import com.anticaptcha.RecaptchaV2
import kotlinx.coroutines.runBlocking

fun main(): Unit = runBlocking {
    // Create the API client and set the API key
    val ac = AnticaptchaClient(
        apiKey = "YOUR_API_KEY_HERE",
        // Specify softId to earn 10% commission with your app.
        // Get your softId here: https://anti-captcha.com/clients/tools/devcenter
        softId = 0,
        // Set to false to turn the debug output off
        verbose = true,
    )

    try {
        // Make sure the API key funds balance is positive
        val balance = ac.getBalance()
        if (balance <= 0) {
            // Stop here to make sure you don't DDoS the API while having empty balance
            System.err.println("Empty balance")
            return@runBlocking
        }
        println("Balance: $balance")

        val solution = ac.solveRecaptchaV2(
            RecaptchaV2(
                websiteUrl = "http://makeawebsitehub.com/recaptcha/test.php",
                websiteKey = "6LfI9IsUAAAAAKuvopU0hfY8pWADfR_mogXokIIZ",

                // isInvisible = true,                  // invisible Recaptcha V2
                // dataSValue = "data-s value",         // typical for google.com websites
            ),
        )

        println("Recaptcha g-response token: ${solution.gRecaptchaResponse}")
        println("Worker's user-agent in case you need it: ${solution.userAgent}")
    } catch (error: ApiException) {
        // https://anti-captcha.com/apidoc/errors
        System.err.println("API error: ${error.errorCode} ${error.description}")
    } catch (error: AnticaptchaException) {
        System.err.println("Failed: ${error.message}")
    }
}

Comment résoudre reCaptcha V2 en C#

// GitHub: https://github.com/anti-captcha/anticaptcha-csharp.git
// install:  dotnet add package AntiCaptchaOfficial
// or, in the Package Manager Console:
// Install-Package AntiCaptchaOfficial

using System;
using AntiCaptcha.Api;
using AntiCaptcha.Helper;


class Program
{
    static void Main()
    {
        // Set to 'false' to turn off debug output
        DebugHelper.VerboseMode = true;

        var api = new RecaptchaV2Proxyless
        {
            ClientKey = "YOUR_API_KEY_HERE",
            WebsiteUrl = new Uri("http://makeawebsitehub.com/recaptcha/test.php"),
            WebsiteKey = "6LfI9IsUAAAAAKuvopU0hfY8pWADfR_mogXokIIZ",
            // IsInvisible = true,          // solving an invisible Recaptcha V2
            // DataSValue = "data-s value", // the "data-s" parameter, typical for google.com
            // Specify softId to earn 10% commission with your app.
            // Get your softId here:
            // https://anti-captcha.com/clients/tools/devcenter
            SoftId = 0
        };

        // Make sure the API key funds balance is positive
        var balance = api.GetBalance();
        if (balance == null || balance <= 0)
        {
            // Exit the program to make sure you don't DDoS the API with requests while having empty balance
            Console.WriteLine("Balance error: " + api.ErrorMessage);
            return;
        }
        Console.WriteLine("Balance: " + balance);

        var solution = api.Solve();
        Console.WriteLine("Recaptcha g-response token: " + solution?.GRecaptchaResponse);
        Console.WriteLine("Worker's user-agent in case you need it: " + solution?.UserAgent);
    }
}

Comment résoudre reCaptcha V2 en C++

// GitHub: https://github.com/anti-captcha/anticaptcha-cplus.git
// Add it to your CMake project:
//   include(FetchContent)
//   FetchContent_Declare(anticaptcha
//           GIT_REPOSITORY https://github.com/anti-captcha/anticaptcha-cplus.git
//           GIT_TAG v1.0.0)
//   FetchContent_MakeAvailable(anticaptcha)
//   target_link_libraries(your_app PRIVATE anticaptcha::anticaptcha)

#include <iostream>
#include <anticaptcha/anticaptcha.hpp>

int main() {
    // Create the API client and set the API key
    anticaptcha::Client ac("YOUR_API_KEY_HERE");

    // Debug output is on by default, turn it off with:
    // ac.shut_up();

    // Specify softId to earn 10% commission with your app.
    // Get your softId here: https://anti-captcha.com/clients/tools/devcenter
    ac.set_soft_id(0);

    try {
        // Make sure the API key funds balance is positive
        const double balance = ac.get_balance();
        if (balance <= 0) {
            // Stop here to make sure you don't DDoS the API while having empty balance
            std::cerr << "Empty balance" << std::endl;
            return 1;
        }
        std::cout << "Balance: " << balance << std::endl;

        anticaptcha::RecaptchaV2 params;
        params.website_url = "http://makeawebsitehub.com/recaptcha/test.php";
        params.website_key = "6LfI9IsUAAAAAKuvopU0hfY8pWADfR_mogXokIIZ";
        // params.is_invisible = true;             // solving an invisible Recaptcha V2
        // params.data_s_value = "data-s value";   // the "data-s" parameter, typical for google.com

        const anticaptcha::Solution solution = ac.solve_recaptcha_v2(params);
        std::cout << "Recaptcha g-response token: " << solution.g_recaptcha_response() << std::endl;
        std::cout << "Worker's user-agent in case you need it: " << solution.user_agent() << std::endl;
    } catch (const anticaptcha::ApiError& error) {
        // https://anti-captcha.com/apidoc/errors
        std::cerr << "API error: " << error.error_code() << " " << error.description() << std::endl;
        return 1;
    } catch (const anticaptcha::Error& error) {
        std::cerr << "Failed: " << error.what() << std::endl;
        return 1;
    }

    return 0;
}

Comment résoudre reCaptcha V2 en Rust

// GitHub: https://github.com/anti-captcha/anticaptcha-rust
// Install with:
//   cargo add anticaptchaofficial
// or add it to Cargo.toml:
//   [dependencies]
//   anticaptchaofficial = "1"

use anticaptcha::{Client, RecaptchaV2};

#[tokio::main]
async fn main() -> anticaptcha::Result<()> {
    // Create the API client and set the API key
    let ac = Client::new("YOUR_API_KEY_HERE")
        // Specify softId to earn 10% commission with your app.
        // Get your softId here: https://anti-captcha.com/clients/tools/devcenter
        .with_soft_id(0);
    // .quiet() turns the debug output off

    // Make sure the API key funds balance is positive
    let balance = ac.get_balance().await?;
    if balance <= 0.0 {
        // Stop here to make sure you don't DDoS the API while having empty balance
        eprintln!("Empty balance");
        return Ok(());
    }
    println!("Balance: {balance}");

    let solution = ac
        .solve_recaptcha_v2(&RecaptchaV2 {
            website_url: "http://makeawebsitehub.com/recaptcha/test.php".into(),
            website_key: "6LfI9IsUAAAAAKuvopU0hfY8pWADfR_mogXokIIZ".into(),
            // is_invisible: true,                    // solving an invisible Recaptcha V2
            // data_s_value: "data-s value".into(),   // typical for google.com websites
            ..Default::default()
        })
        .await?;

    println!("Recaptcha g-response token: {}", solution.g_recaptcha_response());
    println!("Worker's user-agent in case you need it: {}", solution.user_agent());

    Ok(())
}

Comment résoudre reCaptcha V2 en Ruby

# GitHub: https://github.com/anti-captcha/anticaptcha-ruby
# Install with:
#   gem install anticaptchaofficial
# or add it to your Gemfile:
#   gem "anticaptchaofficial"

require "anticaptcha"

# Create the API client and set the API key
ac = Anticaptcha.new("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.soft_id = 0

# Set to false to turn the debug output off
ac.verbose = true

begin
  # Make sure the API key funds balance is positive
  balance = ac.balance
  # Stop here to make sure you don't DDoS the API while having empty balance
  abort "Empty balance" if balance <= 0
  puts "Balance: #{balance}"

  solution = ac.solve_recaptcha_v2(
    website_url: "http://makeawebsitehub.com/recaptcha/test.php",
    website_key: "6LfI9IsUAAAAAKuvopU0hfY8pWADfR_mogXokIIZ"
    # is_invisible: true,                  # solving an invisible Recaptcha V2
    # data_s_value: "data-s value",        # typical for google.com websites
  )

  puts "Recaptcha g-response token: #{solution.g_recaptcha_response}"
  puts "Worker's user-agent in case you need it: #{solution.user_agent}"
rescue Anticaptcha::ApiError => e
  # https://anti-captcha.com/apidoc/errors
  warn "API error: #{e.error_code} #{e.description}"
rescue Anticaptcha::Error => e
  warn "Failed: #{e.message}"
end

Comment résoudre reCaptcha V2 en bash

curl -i -H "Accept: application/json" \
     -H "Content-Type: application/json" \
     -X POST -d '{
    "clientKey":"YOUR_API_KEY_HERE",
    "task":
        {
            "type":"RecaptchaV2TaskProxyless",
            "websiteURL":"http://mywebsite.com/recaptcha/test.php",
            "websiteKey":"6Lc_aCMTAAAAABx7u2N0D1XnVbI_v6ZdbM6rYf16"
        },
    "softId": 0
}' https://api.anti-captcha.com/createTask

Objet de tâche

Propriété Type Obligatoire Objectif
type String Oui RecaptchaV2TaskProxyless
Nom précédent du type de tâche : NoCaptchaTaskProxyless. Il sera supporté pour toujours, pas besoin de mettre à jour votre code.
websiteURL String Oui Adresse d'une page Web cible. Peut être située n'importe où sur le site Web, même dans une zone membre. Nos travailleurs n'y naviguent pas, mais simulent plutôt la visite.
websiteKey String Oui Clé du site Recaptcha. Découvrez comment la trouver dans cet article.
recaptchaDataSValue String Non Valeur du paramètre 'data-s'. S'applique uniquement aux sites Web Recaptcha et Google.
isInvisible Boolean Non Spécifiez si Recaptcha est invisible. Cela rendra un widget approprié pour nos travailleurs.

Objet de solution de tâche

Propriété Type Objectif
gRecaptchaResponse String Chaîne de jeton requise pour interagir avec le formulaire de soumission sur le site Web cible.
cookies Array Tableau facultatif de cookies qui ont été utilisés pour la résolution de Recaptcha. S'applique uniquement aux domaines et sous-domaines google.com.
userAgent String User-Agent du navigateur du travailleur. Utilisez-le lorsque vous soumettez le jeton de réponse.

Exemple de réponse

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