Уведомление об использовании файлов cookie

Этот сайт использует cookie. Файлы cookie запоминают вас, поэтому мы можем предоставить вам персонализированные услуги. Подробнее.

Looking for international version of our service? Go to 2captcha.com

Логотип «GitHub»

KeyCAPTCHA

KeyCAPTCHA widget

Основанный на токенах метод обхода KeyCAPTCHA.

Типы задач

  • KeyCaptchaTaskProxyless - мы используем собственный пул прокси-серверов для решения капч
  • KeyCaptchaTask - мы используем переданный вами прокси

Спецификация для типа задачи KeyCaptchaTaskProxyless

Свойство Тип Обязателен Описание
type Строка Да Тип задачи:
KeyCaptchaTaskProxyless
KeyCaptchaTask
websiteURL Строка Да Полный URL-адрес целевой веб-страницы, на которую загружается капча. Мы не открываем страницу, это не проблема, если страница доступна только для авторизованных пользователей
s_s_c_user_id Строка Да Значение параметра s_s_c_user_id найденное на странице
s_s_c_session_id Строка Да Значение параметра s_s_c_session_id найденное на странице
s_s_c_web_server_sign Строка Да Значение параметра s_s_c_web_server_sign найденное на странице
s_s_c_web_server_sign2 Строка Да Значение параметра s_s_c_web_server_sign2 найденное на странице

Спецификация для типа задачи KeyCaptchaTask

Задача KeyCaptchaTask расширяет KeyCaptchaTaskProxyless, добавляя набор параметров, связанных с прокси, перечисленных ниже.

Свойство Тип Обязателен Описание
proxyType Строка Да Тип прокси:
http
socks4
socks5
proxyAddress Строка Да IP-адрес прокси-сервера или имя хоста
proxyPort Число Да Порт прокси-сервера
proxyLogin Строка Нет Логин используемый для аунтефикации на прокси-сервере
proxyPassword Строка Нет Пароль используемый для аунтефикации на прокси-сервере

Примеры запросов

Метод: createTask
Конечная точка API: https://api.rucaptcha.com/createTask

KeyCaptchaTaskProxyless

{
  "clientKey": "YOUR_API_KEY",
  "task": {
    "type": "KeyCaptchaTaskProxyless",
    "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",
    "websiteURL": "https://rucaptcha.com/demo/keycaptcha"
  }
}

KeyCaptchaTask

{
    "clientKey": "YOUR_API_KEY",
    "task": {
        "type": "KeyCaptchaTask",
        "s_s_c_user_id": 184015,
        "s_s_c_session_id": "80f5f77b8b396b6cb6ea59cf22c38c55",
        "s_s_c_web_server_sign": "418910f3da05d4e3125030e4f9c95d42",
        "s_s_c_web_server_sign2": "118b538926cf9aafc48926bcaccf4c0e",
        "websiteURL": "https://rucaptcha.com/demo/keycaptcha",
        "proxyType": "http",
        "proxyAddress": "1.2.3.4",
        "proxyPort": "8080",
        "proxyLogin": "user23",
        "proxyPassword": "p4$$w0rd"
    }
}

Пример ответа

{
    "errorId": 0,
    "status": "ready",
    "solution": {
        "token": "84f42ee334f6bd760b8be3b2b...492598266d7a2418511776505f79|1"
    },
    "cost": "0.00299",
    "ip": "1.2.3.4",
    "createTime": 1692863536,
    "endTime": 1692863556,
    "solveCount": 0
}

Примеры кода

// 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://rucaptcha.com/demo/keycaptcha',
    ]);
} catch (\Exception $e) {
    die($e->getMessage());
}

die('Captcha solved: ' . $result->code);
# 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://rucaptcha.com/demo/keycaptcha')

except Exception as e:
    sys.exit(e)

else:
    sys.exit('solved: ' + str(result))
// 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://rucaptcha.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);
            }
        }
    }
}
// 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://rucaptcha.com/demo/keycaptcha");
        try {
            solver.solve(captcha);
            System.out.println("Captcha solved: " + captcha.getCode());
        } catch (Exception e) {
            System.out.println("Error occurred: " + e.getMessage());
        }
    }
}
// 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://rucaptcha.com/demo/keycaptcha",   
    }
    code, err := client.Solve(cap.ToRequest())
    if err != nil {
        log.Fatal(err);
    }
    fmt.Println("code "+code)
}
# https://github.com/2captcha/2captcha-ruby
require 'api_2captcha'

client =  Api2Captcha.new("YOUR_API_KEY")

result = client.keycaptcha({
  s_s_c_user_id: 184015,
  s_s_c_session_id: '9ff29e0176e78eb7ba59314f92dbac1b',
  s_s_c_web_server_sign: '964635241a3e5e76980f2572e5f63452-pz-',
  s_s_c_web_server_sign2: '3ca802a38ffc5831fa293ac2819b1204',
  pageurl: 'https://rucaptcha.com/demo/keycaptcha'
})

Полезные ссылки