• Captchas demo
  • reCAPTCHA
  • Others
    • Normal CAPTCHA
    • GeeTest CAPTCHA
    • Cloudflare Turnstile
    • KeyCAPTCHA
    • Lemin CAPTCHA
    • Text CAPTCHA
    • Rotate CAPTCHA
    • Click CAPTCHA
    • MTCaptcha
    • Solve Media CAPTCHA

Click CAPTCHA demo

Ta strona wyjaśnia, jak wyświetlana jest Click CAPTCHA i jak działa weryfikacja Click CAPTCHA. Ta metoda pozwala rozwiązać każdy test captcha, która wymaga klikania obrazów, takich jak Ghost Captcha Shapchata, reCAPTCHA V2, ASIRRA itp.

przykład testów clickcaptcha
Logo "Click CAPTCHA"

W wielu przypadkach Click CAPTCHA utrudnia dostępność, frustruje użytkowników, ogranicza dostęp do otwartych informacji, utrudnia testowanie aplikacji i witryn. Użyj Click CAPTCHA solvera do automatycznego obejścia.

How to solve ClickCaptcha

  1. Download the captcha image.

  2. Send image to our API.

    PHP

    // https://github.com/2captcha/2captcha-php
    
    require(__DIR__ . '/../src/autoloader.php');
    
    $solver = new \TwoCaptcha\TwoCaptcha('YOUR_API_KEY');
    
    try {
        $result = $solver->coordinates([
            'file' => 'path/to/captcha.jpg',
            'lang' => 'en',
        ]);
    } catch (\Exception $e) {
        die($e->getMessage());
    }
    
    die('Captcha solved: ' . $result->code);

    Python

    # https://github.com/2captcha/2captcha-python
    
    import sys
    import os
    
    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, defaultTimeout=120, pollingInterval=5)
    
    try:
        result = solver.coordinates('path/to/captcha.jpg',
                                    lang='en')
    except Exception as e:
        sys.exit(e)
    
    else:
        sys.exit('solved: ' + str(result))

    Java

    // https://github.com/2captcha/2captcha-java
    
    package examples;
    
    import java.io.File;
    import com.twocaptcha.TwoCaptcha;
    import com.twocaptcha.captcha.Coordinates;
    
    public class CoordinatesOptionsExample {
        public static void main(String[] args) {
            TwoCaptcha solver = new TwoCaptcha("YOUR_API_KEY");
            Coordinates captcha = new Coordinates();
            captcha.setFile("path/to/captcha.jpg");
            captcha.setLang("en");
            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.IO;
    using System.Linq;
    using TwoCaptcha.Captcha;
    
    namespace TwoCaptcha.Examples {
        public class CoordinatesOptionsExample {
            public void Main() {
                TwoCaptcha solver = new TwoCaptcha("YOUR_API_KEY");
                Coordinates captcha = new Coordinates();
                captcha.SetFile("path/to/captcha.jpg");
                captcha.SetLang("en");
                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.Coordinates{
            File: "path/to/captcha.jpg",
            Lang: "en",
        }
        code, err := client.Solve(captcha.ToRequest())
        if err != nil {
            log.Fatal(err);
        }
        fmt.Println("code "+code)
    }

    C++

    // https://github.com/2captcha/2captcha-cpp
    
    #include <cstdio>
    
    #include "curl_http.hpp"
    #include "api2captcha.hpp"
    
    int main (int ac, char ** av)
    {
    if (ac < 2)
    {
        printf ("Usage: ./coordinates path/to/image.jpg\n");
        return 0;
    }
    
    api2captcha::curl_http_t http;
    http.set_verbose (true);
    
    api2captcha::client_t client;
    client.set_http_client (&http);
    client.set_api_key (API_KEY);
    
    assert (ac > 1);
    api2captcha::coordinates_t cap (av[1]);
    
    try
    {
        client.solve (cap);
        printf ("code '%s'\n", cap.code ().c_str ());
    }
    catch (std::exception & e)
    {
        fprintf (stderr, "Failed: %s\n", e.what ());
    }
    
    return 0;   
    }

    Ruby

    # https://github.com/2captcha/2captcha-ruby
    require 'api_2captcha'
    
    client =  Api2Captcha.new("YOUR_API_KEY")
    
    result = client.coordinates({
      image: 'path/to/captcha.jpg',
      lang: 'en',
      hint_image: 'path/to/hint.jpg',
      hint_text: 'Connect the dots'
    })

    Manually:

    1. Multipart sample form:

      <form method="post" action="https://2captcha.com/in.php" enctype="multipart/form-data">
          <input type="hidden" name="method" value="post">
          <input type="hidden" name="coordinatescaptcha" value="1">
          Your key:
          <input type="text" name="key" value="YOUR_APIKEY">
          ClickCaptcha file:
          <input type="file" name="file">
          <input type="submit" value="Upload and get the ID">
      </form>
    2. If everything is fine server will return the ID of your captcha:

      OK|2122988149
      Otherwise server will return an error code.

    3. After 5 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 token:

      OK|coordinates:x=127,y=69;x=131,y=207;x=133,y=133
      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. Click on the image using the coordinates obtained in the answer.