쿠키 사용 알림

이 사이트는 쿠키를 사용합니다. 쿠키는 사용자를 기억하고, 이를 통해 개인화된 서비스를 제공할 수 있습니다. 자세한 내용은 더 알아보기를 참조하십시오.

  • Captchas demo
  • reCAPTCHA
  • Others

KeyCAPTCHA 데모

이 페이지에서는 KeyCAPTCHA이 표시되는 방식과 KeyCAPTCHA 확인이 작동하는 방식을 설명합니다. KeyCaptcha는 간단한 퍼즐을 맞춰야 하는 캡차의 한 종류입니다.

«KeyCAPTCHA» 로고

많은 경우에 KeyCAPTCHA은 접근성을 방해하고, 사용자를 좌절시키고, 공개 정보에 대한 접근을 제한하고, 애플리케이션 및 사이트 테스트를 어렵게 만듭니다. 자동 우회를 위해서는 KeyCAPTCHA 솔버를 사용하세요.

How to solve KeyCaptcha

  1. Find the following KeyCaptcha parameters in page's source code:

    s_s_c_user_id
    s_s_c_session_id
    s_s_c_web_server_sign
    s_s_c_web_server_sign2
  2. Send these parameters to 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->keycaptcha([
            's_s_c_user_id'          => 184015,
            's_s_c_session_id'       => '9ff29e0176e78eb7ba59314f92dbac1b',
            's_s_c_web_server_sign'  => '964635241a3e5e76980f2572e5f63452',
            's_s_c_web_server_sign2' => '3ca802a38ffc5831fa293ac2819b1204',
            'url'                    => 'https://2captcha.com/demo/keycaptcha',
        ]);
    } 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)
    
    try:
        result = solver.keycaptcha(
            s_s_c_user_id=184015,
            s_s_c_session_id='9ff29e0176e78eb7ba59314f92dbac1b',
            s_s_c_web_server_sign='964635241a3e5e76980f2572e5f63452',
            s_s_c_web_server_sign2='3ca802a38ffc5831fa293ac2819b1204',
            url='https://2captcha.com/demo/keycaptcha')
    
    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.KeyCaptcha;
    
    public class KeyCaptchaExample {
        public static void main(String[] args) {
            TwoCaptcha solver = new TwoCaptcha("YOUR_API_KEY");
            KeyCaptcha captcha = new KeyCaptcha();
            captcha.setUserId(184015);
            captcha.setSessionId("9ff29e0176e78eb7ba59314f92dbac1b");
            captcha.setWebServerSign("964635241a3e5e76980f2572e5f63452");
            captcha.setWebServerSign2("3ca802a38ffc5831fa293ac2819b1204");
            captcha.setUrl("https://2captcha.com/demo/keycaptcha");
            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 KeyCaptchaExample
        {
            public void Main()
            {
                TwoCaptcha solver = new TwoCaptcha("YOUR_API_KEY");
                KeyCaptcha captcha = new KeyCaptcha();
                captcha.SetUserId(184015);
                captcha.SetSessionId("9ff29e0176e78eb7ba59314f92dbac1b");
                captcha.SetWebServerSign("964635241a3e5e76980f2572e5f63452");
                captcha.SetWebServerSign2("3ca802a38ffc5831fa293ac2819b1204");
                captcha.SetUrl("https://2captcha.com/demo/keycaptcha");
                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.KeyCaptcha{
            UserId: 184015,
            SessionId: "9ff29e0176e78eb7ba59314f92dbac1b",
            WebServerSign: "964635241a3e5e76980f2572e5f63452",
            WebServerSign2: "3ca802a38ffc5831fa293ac2819b1204",
            Url: "https://2captcha.com/demo/keycaptcha",   
        }
        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)
    {
    api2captcha::curl_http_t http;
    http.set_verbose (true);
    
    api2captcha::client_t client;
    client.set_http_client (&http);
    client.set_api_key (API_KEY);
    
    api2captcha::keycaptcha_t cap;
    cap.set_user_id (184015);
    cap.set_session_id ("9ff29e0176e78eb7ba59314f92dbac1b");
    cap.set_web_server_sign ("964635241a3e5e76980f2572e5f63452");
    cap.set_web_server_sign2 ("3ca802a38ffc5831fa293ac2819b1204");
    cap.set_url ("https://2captcha.com/demo/keycaptcha");
    
    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.keycaptcha({
      s_s_c_user_id: 10,
      s_s_c_session_id: '493e52c37c10c2bcdf4a00cbc9ccd1e8',
      s_s_c_web_server_sign: '9006dc725760858e4c0715b835472f22-pz-',
      s_s_c_web_server_sign2: '2ca3abe86d90c6142d5571db98af6714',
      pageurl: 'https://www.keycaptcha.ru/demo-magnetic/'
    })

    Wait for the result, which may look like this:

    ebdb5a6bf76da6887db60ef2041ab946|964635241a3e5e76980f2572e5f63452|http://back10.keycaptcha.com/swfs/ckc/5bded85426de3c57a7529a84bd0d4d08-|9ff29e0176e78eb7ba59314f92dbac1b|1

    Manually:

    1. Send a HTTP GET or POST request to our API URL: https://2captcha.com/in.php with method set to keycaptcha and provide 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&s_s_c_user_id=10&s_s_c_session_id=9ff29e0176e78eb7ba59314f92dbac1b&s_s_c_web_server_sign=964635241a3e5e76980f2572e5f63452&s_s_c_web_server_sign2=3ca802a38ffc5831fa293ac2819b1204&method=keycaptcha&pageurl=http://2captcha.com/demo/keycaptcha

    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 token:

      OK|ebdb5a6bf76da6887db60ef2041ab946|964635241a3e5e76980f2572e5f63452|http://back10.keycaptcha.com/swfs/ckc/5bded85426de3c57a7529a84bd0d4d08-|9ff29e0176e78eb7ba59314f92dbac1b|1
      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. Locate and delete the following block which inclides keycaptcha JavaScript file:

    <script language="JavaScript" src="http://backs.keycaptcha.com/swfs/cap.js"></script>
  4. Locate and delete the div with id="div_for_keycaptcha":

    <div id="div_for_keycaptcha"...>...</div>
  5. Locate the element with id="capcode" and change it's value to the response received from our server:

    <input name="capcode" id="capcode" value="1|2|3|4|5" type="hidden">
  6. Click on "Check" button to submit the form.