Rotate Captcha demo

Rotate Captcha is a type of captcha where you have to rotate images to solve it. The most popular is FunCaptcha.

rotatecaptcha example
backBack to captcha list

How to solve Rotate Captcha

  1. Download the captcha image.

  2. Send image to our API.

    PHP

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

    Python

    # https://github.com/2captchacom/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)
    
    try:
        result = solver.rotate('./images/rotate.jpg')
    
    except Exception as e:
        sys.exit(e)
    
    else:
        sys.exit('result: ' + str(result))

    Java

    // https://github.com/2captchacom/2captcha-java
    
    package examples;
    
    import com.twocaptcha.TwoCaptcha;
    import com.twocaptcha.captcha.Rotate;
    
    public class RotateExample {
        public static void main(String[] args) {
            TwoCaptcha solver = new TwoCaptcha("YOUR_API_KEY");
            Rotate captcha = new Rotate();
            captcha.setFile("path/to/captcha.jpg");
            captcha.setAngle(15);
            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/2captchacom/2captcha-csharp
    
    using System;
    using System.Linq;
    using TwoCaptcha.Captcha;
    
    namespace TwoCaptcha.Examples
    {
        public class RotateExample
        {
            public void Main()
            {
                TwoCaptcha solver = new TwoCaptcha("YOUR_API_KEY");
                Rotate captcha = new Rotate();
                captcha.SetFile("path/to/captcha.jpg");
                captcha.SetAngle(15);
                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/2captchacom/2captcha-go
    
    package main
    
    import (
        "fmt"
        "log"
        "github.com/2captcha/2captcha-go"
    )
    
    func main() {
        client := api2captcha.NewClient("API_KEY")
        cap := api2captcha.Rotate{
            File: "path/to/captcha.jpg",
            Angle: 15,
        }
        code, err := client.Solve(cap.ToRequest())
        if err != nil {
            log.Fatal(err);
        }
        fmt.Println("code "+code)
    }

    C++

    // https://github.com/2captchacom/2captcha-cpp
    
    #include <cstdio>
    
    #include "curl_http.hpp"
    #include "api2captcha.hpp"
    
    int main (int ac, char ** av)
    {
    if (ac < 2)
    {
        printf ("Usage: ./rotate 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::rotate_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;   
    }

    Manually:

    1. Multipart sample form:

      <form method="post" action="https://2captcha.com/in.php" enctype="multipart/form-data">
          KEY:<br>
          <input  name="key" value="YOUR_APIKEY"><br>
          Type<br>
          <input  name="method" value="rotatecaptcha"><br>
          Angle<br>
          <input  name="angle" value="15"><br>
          File:<br>
          <input type="file" name="file_1"><br>
          <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|165
      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.

How to solve Rotate Captcha