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

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

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

Логотип «GitHub»
  • Мы поддерживаем API для языка «PHP»
  • Мы поддерживаем API для языка «Python»
  • Мы поддерживаем API для языка «Go»
  • Мы поддерживаем API для языка «Ruby»
  • Мы поддерживаем API для языка «C#»
  • Мы поддерживаем API для языка «Java»
  • Мы поддерживаем API для языка «JavaScript»

Метод Grid

Grid

Этот метод можно использовать для обхода задач, в которых к изображению применяется сетка и вам нужно щелкнуть по плиткам сетки, например, по изображениям reCAPTCHA или hCaptcha.

Возвращает массив индексов плиток, где 1 - верхняя левая плитка.

Поддерживаемые форматы изображений: JPEG, PNG, GIF
Максимальный размер файла: 600 kB
Максимальный размер изображения: 1000px с любой стороны

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

Свойство Тип Обязателен Описание
type Строка Да Тип задачи: GridTask
body Строка Да Изображение закодировано в формат Base64. Также поддерживается формат Data-URI (содержащий префикс data:content/type)
rows Число Нет Количество строк в сетке
columns Число Нет Количество столбцов в сетке
comment Строка Да* Работникам будет показан комментарий, который поможет им правильно разгадать капчу
imgInstructions Строка Да* Изображение с инструкцией, которое будет показано работникам. Изображение должно быть закодировано в формат Base64. Максимальный размер файла: 100 kB
minClicks Число Нет Минимальное количество плиток которые должны быть выбраны на изображении. По умолчанию: 1. Не может быть больше чем rows * columns
maxClicks Число Нет Максимальное количество плиток которые могут быть выбраны на изображении. По умолчанию: rows * columns
    • обязательно передать либо comment, либо imgInstructions

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

Метод: createTask
Эндпоинт API: https://api.rucaptcha.com/createTask

{
    "clientKey":"YOUR_API_KEY",
    "task": {
        "type":"GridTask",
        "body":"/9j/4AAQSkZJRgABAQAAAQ..HIAAAAAAQwAABtbnRyUkdCIFhZ.wc5GOGSRF//Z",
        "comment":"select all vehicles",
        "rows": 4,
        "columns": 4
    }
}

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

Метод: getTaskResult
Эндпоинт API: https://api.rucaptcha.com/getTaskResult

{
    "errorId": 0,
    "status": "ready",
    "solution": {
        "click": [
            4,
            8,
            12,
            16
        ]
    },
    "cost": "0.0012",
    "ip": "1.2.3.4",
    "createTime": 1692863536,
    "endTime": 1692863556,
    "solveCount": 1
}

Примеры кода

  // https://github.com/2captcha/2captcha-php

  require(__DIR__ . '/../src/autoloader.php');

  $solver = new \TwoCaptcha\TwoCaptcha('YOUR_API_KEY');

  try {
      $result = $solver->grid('path/to/captcha.jpg');
  } 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.grid('path/to/captcha.jpg')

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 GridExample
      {
          public static void Main()
          {
              var solver = new TwoCaptcha("YOUR_API_KEY");
              Grid captcha = new Grid("path/to/captcha.jpg");
              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.Grid;

  public class GridExample {
      public static void main(String[] args) {
          TwoCaptcha solver = new TwoCaptcha("YOUR_API_KEY");
          Grid captcha = new Grid("path/to/captcha.jpg");
          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")
      captcha := api2captcha.Grid{
          File: "/path/to/captcha.jpg",
      }
      code, err := client.Solve(captcha.ToRequest())
      if err != nil {
          log.Fatal(err);
      }
      fmt.Println("code "+code)
  }
  require 'api_2captcha'

  client =  Api2Captcha.new("YOUR_API_KEY")

  result = client.grid({ image: 'path/to/captcha.jpg'})
  # OR
  result = client.grid({
  image: 'https://site-with-captcha.com/path/to/captcha.jpg'
  })