Логотип «2Captcha»Перейти на главную страницу
Туториалы по обходу капчи

Эта статья была полезной?

Как обойти rotate капчу

Рубен Эрера

Строю backend, IT-инфраструктуру и automation-сервисы для масштабируемых SaaS-продуктов.

Как распознать, решить обойти повортную капчу автоматически с помощью сервиса распознавания

Введение

Если вы автоматизируете работу с сайтами, где встречается поворотная капча (Rotate CAPTCHA), и вам нужно точно определять угол поворота изображения, это руководство для вас.

Сервис 2Captcha позволяет решать Rotate CAPTCHA через API с помощью задачи типа RotateTask. Это критично для сайтов, которые требуют повернуть объект в правильное положение перед продолжением работы.

Статья описывает процесс отправки запросов напрямую через JSON API.

Общие сведения

Rotate CAPTCHA — это тип капчи, где пользователю предлагается повернуть изображение (иконку, объект, фотографию) в правильное положение. В отличие от текстовых капч, здесь ответом является числовое значение угла поворота.

Основная проблема при автоматизации: без точного указания шага поворота или подсказки исполнитель может выбрать неверный угол. Если целевой сайт требует точного позиционирования, решение будет отклонено.

Решение: явно указать параметр angle и добавить понятный comment в задаче типа RotateTask. Это помогает работникам 2Captcha быстрее и точнее определить нужный угол.

Подготовка окружения

Перед началом работы убедитесь, что у вас есть:

  • Доступ к терминалу с поддержкой curl или HTTP-клиентом (Postman, HTTPie)
  • API-ключ из личного кабинета 2Captcha
  • Изображение капчи в формате JPG, PNG или GIF (макс. 600 КБ)
  • Инструмент для кодирования в Base64 (онлайн-конвертер или команда base64)

Пример кодирования изображения в Base64 через терминал:

bash Copy
base64 -w 0 captcha.png > captcha_b64.txt

Проверьте, что полученная строка не содержит переносов строк.

Анализ страницы

Для Rotate CAPЧА не требуется извлечение sitekey или анализ токенов. Достаточно:

  1. Найти запрос, который загружает изображение капчи (вкладка Network в DevTools)
  2. Сохранить изображение локально или извлечь Base64-строку напрямую
  3. Определить шаг поворота: посчитайте количество доступных позиций (например, 6 позиций = шаг 60°)
  4. Подготовить параметры задачи с учётом angle и comment

Если шаг поворота неизвестен, можно опустить параметр angle, но точность решения может снизиться.

Реализация

Отправка задачи

Задача отправляется POST-запросом на эндпоинт createTask:

Copy
https://api.2captcha.com/createTask

Headers:

Copy
Content-Type: application/json

Тело запроса:

json Copy
{
    "clientKey": "YOUR_API_KEY",
    "task": {
        "type": "RotateTask",
        "body": "BASE64_ENCODED_IMAGE",
        "angle": 60,
        "comment": "Rotate the image to upright position"
    },
    "languagePool": "en"
}

Опрос статуса задачи

Используйте taskId из ответа для опроса статуса:

Copy
https://api.2captcha.com/getTaskResult

Тело запроса:

json Copy
{
    "clientKey": "YOUR_API_KEY",
    "taskId": 74455221488
}

Пример ответа при готовности:

json Copy
{
    "errorId": 0,
    "status": "ready",
    "solution": {
        "rotate": 180
    }
}

Значение solution.rotate содержит угол в градусах, на который нужно повернуть изображение.

Пояснения к параметрам

Параметры задачи RotateTask

Параметр Тип Обязательный Описание
type String Да Всегда RotateTask
body String Да Изображение в Base64 или Data-URI
angle Integer Нет Шаг поворота в градусах (например, 60 для 6 позиций)
comment String Нет Подсказка для исполнителя на английском или языке пула
languagePool String Нет Предпочтительный язык исполнителя (en, ru, es и др.)

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

Поле Тип Описание
errorId Integer 0 — успех, другое значение — код ошибки
status String processing — задача в очереди, ready — решение готово
solution.rotate Integer Угол поворота в градусах (0–359)

Обратная связь по результатам решения

После получения ответа от 2Captcha и проверки его на целевом сайте рекомендуется отправить обратную связь. Это помогает улучшать качество распознавания и в некоторых случаях возвращать средства за ошибочные решения.

Если сайт отклонил решение (неправильный угол)

Отправьте POST-запрос на эндпоинт reportIncorrect:

Эндпоинт: https://api.2captcha.com/reportIncorrect

Метод: POST

Content-Type: application/json

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

json Copy
{
    "clientKey": "YOUR_API_KEY",
    "taskId": 74455221488
}

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

json Copy
{
    "errorId": 0,
    "status": "success"
}

Важно: не используйте этот метод, если ваш процент успеха близок к 0%. Это может указывать на ошибку в вашем коде, а не в решениях капчи.

Если сайт принял решение (правильный угол)

Отправьте POST-запрос на эндпоинт reportCorrect:

Эндпоинт: https://api.2captcha.com/reportCorrect

Метод: POST

Content-Type: application/json

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

json Copy
{
    "clientKey": "YOUR_API_KEY",
    "taskId": 74455221488
}

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

json Copy
{
    "errorId": 0,
    "status": "success"
}

Политика возвратов

  • Каждый случай рассматривается индивидуально
  • Для стандартных капч проверяется корректность ответа
  • Для капч с токеном анализируется статистика исполнителя
  • Возврат средств не гарантируется по каждой жалобе
  • Итоговая сумма возвратов может отличаться от количества обращений

Отправляйте отчёты честно и только после реальной проверки на целевом сайте.

Использование комментария для сложных случаев

Если капча имеет нестандартный формат или требует особого поворота, добавьте подсказку в параметр comment.

Комментарий отобразится у исполнителя и повысит точность распознавания.

Интеграция с браузерной автоматизацией

Полученный угол solution.rotate можно применить через Selenium, Playwright или Puppeteer:

  • Найдите элемент управления поворотом на странице
  • Вычислите необходимое количество кликов или угол для CSS-трансформации
  • Примените поворот программно перед отправкой формы

Типичные ошибки

Ошибка Причина Решение
ERROR_WRONG_USER_KEY Неверный clientKey Проверьте API-ключ в личном кабинете 2Captcha
ERROR_ZERO_BALANCE Недостаточно средств на балансе Пополните баланс перед отправкой задач
ERROR_CAPTCHA_UNSOLVABLE Изображение нечёткое или задача неоднозначная Улучшите качество изображения, добавьте comment
ERROR_ZERO_CAPTCHA_FILESIZE Размер файла менее 100 байт Проверьте, что изображение корректно закодировано в Base64
ERROR_NO_SLOT_AVAILABLE Очередь переполнена или ставка слишком низкая Увеличьте ставку в настройках или добавьте задержку между запросами
Неправильный угол в ответе Не указан angle или подсказка неточная Добавьте параметр angle и уточните comment

Дополнительные ресурсы

Контрольный список

  • Изображение капчи закодировано в Base64 и не превышает 600 КБ
  • В задачу добавлен параметр angle, если известен шаг поворота
  • Параметр comment содержит понятную инструкцию на английском или целевом языке
  • Ответ валидируется перед применением (errorId, status, solution.rotate)
  • Протестировано применение угла на целевом сайте
  • Реализована отправка отчётов reportIncorrect / reportCorrect
  • При необходимости настроено логирование для отладки

Заключение

Точное определение угла поворота в Rotate CAPTCHA — частая причина ошибок при автоматизации. Параметры angle и comment в задаче RotateTask API 2Captcha позволяют явно указать логику капчи и повысить точность решения.

Используйте прямые JSON-запросы для гибкой интеграции, не забывайте про обработку ошибок и таймауты, и ваши скрипты будут стабильно проходить капчи даже на строгих сайтах.

Не забывайте отправлять обратную связь через reportIncorrect и reportCorrect — это помогает улучшать качество сервиса и возвращать средства за ошибочные решения.

Обходите любую поворотную капчу с помощью решения капчи через API.