Решения сложных капч: метод coordinates в действии
Современные онлайн-сервисы всё чаще прибегают к использованию более сложных форм капчи. Такие задачи используются, например, в Geetest и других подобных сервисах. Этим методом вы можете разгадывать множество других сложных капч.
Как работает такой тип капчи и как его можно решать с помощью метода coordinates? В данной статье мы исследуем способ решения подобных капч.
Принцип работы
Вместо привычных текстовых задач пользователю предлагается картинка с заданием, требующим выполнения последовательности кликов по определенным символам на изображении. Капча может выглядеть следующим образом:



Решение координатной капчи с помощью API ruCaptcha
1. Получение изображения капчи
Для начала решения капчи необходимо получить изображение. Мы ищем элемент, содержащий изображение капчи, и сохраняем само изображение для дальнейшего использования.
2. Получение изображения задания
Подобно первому шагу, находим элемент, содержащий изображение с заданием, и сохраняем его для последующего использования при решении капчи.
3. Отправка капчи на решение
Используя метод coordinates, формируем запрос, включающий полученные изображения, и отправляем его на эндпоинт https://rucaptcha.com/in.php для API V1.
            
            
              js
              
              
              
            
          
          {
  "method": "base64",
  "coordinatescaptcha": 1,
  "key": "YOUR_APIKEY",
  "body": "CAPTCHA_IMAGE",
  "imginstructions": "TASK_IMAGE",
  "textinstructions": "Кликните в таком порядке | Click in the following order",
  "json":1
}и https://rucaptcha.com/createTask для API v2
            
            
              js
              
              
              
            
          
          {
    "clientKey":"YOUR_API_KEY",
    "task": {
        "type":"CoordinatesTask",
        "body":"/9j/4AAQSkZJRgABAQAAAQ..HIAAAAAAQwAABtbnRyUkdCIFhZ.wc5GOGSRF//Z",
        "comment":"click on the green apple",
        "imginstructions": "TASK_IMAGE",
        "json":1
    }
}Из ответа получаем ID капчи и запрашиваем ответ с использованием GET-запроса.
Для API v1
            
            
              js
              
              
              
            
          
          https://rucaptcha.com/res.php?key=YOUR_APIKEY&action=get&id=CAPTCHA_ID&json=1Для API v2
            
            
              js
              
              
              
            
          
          https://rucaptcha.com/createTask?clientKey=YOUR_APIKEY&taskId=CAPTCHA_ID&json=1Результат содержит набор координат, по которым необходимо кликнуть, пример:
            
            
              js
              
              
              
            
          
          {
    "status": 1,
    "request": [
        {
            "x": "187",
            "y": "60"
        },
        {
            "x": "98",
            "y": "121"
        },
        {
            "x": "267",
            "y": "115"
        },
        {
            "x": "173",
            "y": "146"
        },
        {
            "x": "23",
            "y": "69"
        }
    ]
}4. Кликаем по координатам
Учитывая, что точка (0,0) - левый верхний угол изображения CAPTCHA_IMAGE.
5. Кликаем на кнопку "Отправить"
Готово.
Что делать, если ответ не был принят?
Вы можете отправить жалобу reportbad, и модератор проверит капчу.
Стоимость решения
1000 решений стоят 1.2 USD или 70 Rub
Полезные ссылки
- Метод Coordinates API v1 / API v2
- Часто задаваемые вопросы
- Прайс-лист