Demostración de captchas

Click CAPTCHA demostración

Esta página explica cómo se muestra Click CAPTCHA y cómo funciona la verificación Click CAPTCHA.

Este método le permite resolver cualquier captcha que requiera hacer clic en las imágenes, como Ghost Captcha de Shapchat, reCAPTCHA V2, ASIRRA, etc.

ejemplo de clickcaptcha
Logotipo de "Click CAPTCHA"

En muchos casos Click CAPTCHA dificulta la accesibilidad, frustra a los usuarios, limita el acceso a información abierta, dificulta la comprobación de aplicaciones y sitios. Utiliza el solucionador de Click CAPTCHA para evitarlo automáticamente.

Click CAPTCHA solucionadorAPI

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")
        cap := api2captcha.Coordinates{
            File: "path/to/captcha.jpg",
            Lang: "en",
        }
        code, err := client.Solve(cap.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. In developer's console, find input with name="answer", and put there received code. Then, click the Check button.