Demo del GeeTest CAPTCHA V4

Questa pagina spiega come viene visualizzato GeeTest CAPTCHA V4 e come funziona la verifica di GeeTest CAPTCHA V4. GeeTest V4 è un tipo di captcha nel quale bisogna muovere un pezzo di puzzle o selezionare delle figure in un determinato ordine.

GeeTest V4 sta caricando...
Logo di "GeeTest CAPTCHA V4"

In molti casi GeeTest CAPTCHA V4 ostacola l'accessibilità, frustra gli utenti, limita l'accesso alle informazioni aperte, rende difficile il test di applicazioni e siti. Utilizzate il risolutore di GeeTest CAPTCHA V4 per aggirarlo automaticamente.

How to solve GeeTest v4

  1. Open developer's console in your browser and find script element that loads the GeeTest v4 script, you need to grab the captcha_id parameter value from the script src attribute.

    An example of a script element from the page:

    <script  src="https://gcaptcha4.geetest.com/load?captcha_id=e392e1d7fd421dc63325744d5a2b9c73&amp;challenge=36056b4d-7453-4153-aaa7-67ac27ccae9c&amp;client_type=web&amp;lang=en&amp;callback=geetest_1679073111173"></script>
  2. Send captcha_id and pageurl to 2Captcha API.

    PHP

    // https://github.com/2captcha/2captcha-php
    
    require(__DIR__ . '/../src/autoloader.php');
    
    $solver = new \TwoCaptcha\TwoCaptcha('YOUR_API_KEY');
    
    try {
        $result = $solver->geetest_v4([
          'captchaId' => '42977dc9-a215-4b09-aa14-945ef310d829',
          'url'       => 'https://2captcha.com/demo/geetest-v4',
      ]);
    } catch (\Exception $e) {
        die($e->getMessage());
    }
    
    die('Captcha solved: ' . $result->code);

    Python

    # https://github.com/2captcha/2captcha-python
    
    import sys
    import os
    import requests
    sys.path.append(os.path.dirname(os.path.dirname(os.path.realpath(__file__))))
    
    from twocaptcha import TwoCaptcha
    
    api_key = os.getenv('APIKEY_2CAPTCHA', 'YOUR_API_KEY')
    
    solver = TwoCaptcha(api_key)
    
    try:
        result = solver.geetest_v4(captcha_id='42977dc9-a215-4b09-aa14-945ef310d829',
                                   url='https://2captcha.com/demo/geetest-v4')
    
    except Exception as e:
        sys.exit(e)
    
    else:
        sys.exit('solved: ' + str(result))

    Java

    // https://github.com/2captcha/2captcha-java
    
    package examples;
    
    import com.twocaptcha.TwoCaptcha;
    import com.twocaptcha.captcha.GeeTestV4;
    
    public class GeeTestV4Example  {
        public static void main(String[] args) {
            TwoCaptcha solver = new TwoCaptcha("YOUR_API_KEY");
            GeeTestV4 captcha = new GeeTestV4();
            captcha.setCaptchaId("42977dc9-a215-4b09-aa14-945ef310d829");
            captcha.setUrl("https://2captcha.com/demo/geetest-v4");
            try {
                solver.solve(captcha);
                System.out.println("Captcha solved: " + captcha.getCode());
            } catch (Exception e) {
                System.out.println("Error occurred: " + e.getMessage());
            }
        }
    }

    C#

    // https://github.com/2captcha/2captcha-csharp
    
    using System;
    using System.Linq;
    using TwoCaptcha.Captcha;
    
    namespace TwoCaptcha.Examples
    {
        public class GeeTestV4Example
        {
            public void Main()
            {
                TwoCaptcha solver = new TwoCaptcha("YOUR_API_KEY");
                GeeTestV4 captcha = new GeeTestV4();
                captcha.SetCaptchaId("42977dc9-a215-4b09-aa14-945ef310d829");
                captcha.SetUrl("https://2captcha.com/demo/geetest-v4");
                try
                {
                    solver.Solve(captcha).Wait();
                    Console.WriteLine("Captcha solved: " + captcha.Code);
                }
                catch (AggregateException e)
                {
                    Console.WriteLine("Error occurred: " + e.InnerExceptions.First().Message);
                }
            }
        }
    }

    Go

    // https://github.com/2captcha/2captcha-go
    
    package main
    
    import (
        "fmt"
        "log"
        "github.com/2captcha/2captcha-go"
    )
    
    func main() {
        client := api2captcha.NewClient("API_KEY")
        captcha := api2captcha.GeeTestV4{
            CaptchaId: "42977dc9-a215-4b09-aa14-945ef310d829",
            Url: "https://2captcha.com/demo/geetest-v4",
        }
        code, err := client.Solve(captcha.ToRequest())
        if err != nil {
            log.Fatal(err);
        }
        fmt.Println("code "+code)
    }

    Ruby

    # https://github.com/2captcha/2captcha-ruby
    require 'api_2captcha'
    
    client =  Api2Captcha.new("YOUR_API_KEY")
    
    result = client.geetest_v4({
      captcha_id: '42977dc9-a215-4b09-aa14-945ef310d829',
      pageurl: 'https://2captcha.com/demo/geetest-v4'
    })

    Manually:

    1. Submit a HTTP GET or POST request to our API URL: https://2captcha.com/in.php with method set to geetest_v4 providing values found on previous step in your request as values for corresponding request parameters and also full page URL as value for pageurl.

      Request URL example:
      https://2captcha.com/in.php?key=1abc234de56fab7c89012d34e56fa7b8&method=geetest_v4&captcha_id=42977dc9-a215-4b09-aa14-945ef310d829&&pageurl=http://2captcha.com/demo/geetest-v4

    2. If everything is fine server will return the ID of your captcha:

      OK|2122988149
      Otherwise server will return an error code.

    3. After 15-20 seconds send GET request to get the result:

      GET https://2captcha.com/res.php?key=YOUR_API_KEY&action=get&id=2122988149
      If captcha is already solved server will respond with the answer.

      If captcha is not solved yet server will return CAPCHA_NOT_READY result. Repeat your request in 5 seconds. If something went wrong server will return an error code.

  3. If captcha is already solved server will return the response in JSON. The response contains five values: captcha_id, lot_number, pass_token, gen_time and captcha_output:

    {
    "captcha_id":"e392e1d7fd421dc63325744d5a2b9c73",
    "lot_number":"81c1ed8e35be4f67a00bf30b578e873a",
    "pass_token":"0b088f4a5c742a912c0cfa2f98cd8e4fb4bd6a0c9389272ea5beac93f632d4e9",
    "gen_time":"1687352616",
    "captcha_output":"fN36ufW6cQN-UMXTCVLbps254G0c0ZnGN5368O2A5_SaEYV9-8U0kUUT-Of9xrdwrV6xLd8XZLJSs6jiWdyZaVBcG0kIoKkl6Bq4IKg0mlQ-zmEgqq1jSwPIEl34mhUMCq3Xmfj2E-H4_kyh-UjSkPSMMTumf97Fe7PFhZJJfui-731XLBFR7WwJsY8S9BXNKtMzQDp7zUWDZjxGxWyC8n1G3Q5jk7oV4ez9zcmF6PymY_sHj3kFyCoa8q9o8FTp"
    }
  4. Use the values returned on your target website the same way they’re used once you solve the captcha manually. There can be a form with a set of hidden inputs or a JavaScript callback. Or you can simply build a HTTP requests with the required data.

  5. Click on "Check" button to submit the form.