Skip to main content
В данной статье будет представлена инструкция по интеграции API для распознавания цифровых английских капчи, основанная на технологиях глубокого обучения, которая может использоваться для распознавания капчи с переменной длиной. Входные данные — изображение капчи, выходные данные — результат распознавания капчи.

Процесс подачи заявки

Чтобы использовать API для распознавания цифровых английских капчи, сначала перейдите в консоль Ace Data Cloud, чтобы получить ваш API Token и сохранить его для дальнейшего использования. Если вы еще не вошли в систему или не зарегистрированы, вас автоматически перенаправят на страницу входа, где вы сможете зарегистрироваться и войти в систему, после чего вы будете автоматически возвращены на текущую страницу. Один API Token позволяет использовать все услуги платформы, не нужно подавать отдельные заявки на каждую услугу. При первой подаче заявки предоставляется бесплатный лимит, чтобы вы могли попробовать сервис; если лимит исчерпан, вы можете пополнить общий баланс в консоли.
📘 Полная документация: API для распознавания цифровых английских капчи →

Основное использование

Сначала ознакомьтесь с основным способом использования: вам нужно ввести изображение капчи с переменной длиной, и вы получите обработанный результат. Для этого необходимо просто передать поле image, которое содержит конкретное изображение капчи, как показано на рисунке:

Затем нам нужно преобразовать изображение капчи в кодировку Base64. Для преобразования в кодировку Base64 рекомендуется использовать плагин для браузера Google Chrome FeHelper, подробности использования можно увидеть на следующем изображении:

После этого вы можете скопировать кодировку Base64, полученную с помощью плагина FeHelper, помните, что она не должна содержать префикс data:image/png;base64, конкретное содержимое выглядит следующим образом:

Как видно, мы настроили заголовки запроса, включая:
  • accept: формат ответа, который вы хотите получить, здесь указано application/json, то есть формат JSON.
  • authorization: ключ для вызова API, после запроса вы можете выбрать его из выпадающего списка.
Также настроено тело запроса, включая:
  • image: изображение капчи в кодировке Base64 (без префикса data:image/png;base64).
После выбора вы можете заметить, что справа также сгенерирован соответствующий код, как показано на рисунке:

Нажмите кнопку «Try», чтобы провести тестирование, как показано на рисунке, и вы получите следующий результат:
Возвращаемый результат содержит несколько полей, описание которых приведено ниже:
  • text: текстовое содержимое, полученное в результате обработки изображения капчи с переменной длиной.
  • started_at, finished_at: время начала обработки запроса и получения результата, Unix временная метка (в секундах, с плавающей точкой).
  • elapsed: общее время обработки (в секундах).
Как видно, мы получили результат проверки изображения капчи с переменной длиной, и нам нужно просто использовать текстовое содержимое из поля text для прохождения проверки. Если вы хотите сгенерировать соответствующий код для интеграции, вы можете просто скопировать его, например, код для CURL выглядит следующим образом:
Код для интеграции на Python выглядит следующим образом:

Асинхронный режим (async)

По умолчанию API работает в синхронном блокирующем режиме: один запрос будет ждать, пока не завершится обработка результата распознавания. Если вы используете многократные ротации капчи (multi-solver rotation) и хотите «сразу получить task_id после отправки задачи, а затем переключиться на другие капчи и позже вернуться за результатом», вы можете передать async: true в теле запроса. После передачи async: true интерфейс сразу вернет task_id, не блокируя ожидание:
Если вы хотите активно отслеживать прогресс, вы можете использовать этот task_id для запроса POST /captcha/tasks (рекомендуется каждые 3-5 секунд). Этот интерфейс не инициирует и не продвигает обработку задач; даже если вы не запрашиваете, теряете соединение или выходите из клиента, сервер продолжит обработку:
Во время обработки будет возвращен status: processing:
После завершения обработки будет возвращен status: ready и результат распознавания text (структура полей полностью совпадает с синхронным режимом):
Условия оплаты: в асинхронном режиме создание задачи и чтение статуса «в обработке» не подлежат оплате; клиент оплачивает один раз при первом успешном чтении результата (что соответствует текущему поведению и ценам синхронного режима). Сервер будет самостоятельно продвигать задачи, но не будет взимать плату заранее, если задача завершится в фоновом режиме. Если задача не будет успешно завершена в течение 120 секунд, она будет остановлена с HTTP 504 timeout, без оплаты. /captcha/tasks не отвечает за продвижение задач.

Обработка ошибок

При вызове API, если возникнет ошибка, API вернет соответствующий код ошибки и информацию. Например:
  • 400 token_mismatched:Неверный запрос, возможно, из-за отсутствующих или недействительных параметров.
  • 400 api_not_implemented:Неверный запрос, возможно, из-за отсутствующих или недействительных параметров.
  • 401 invalid_token:Неавторизован, недействительный или отсутствующий токен авторизации.
  • 429 too_many_requests:Слишком много запросов, вы превысили лимит частоты.
  • 500 api_error:Внутренняя ошибка сервера, что-то пошло не так на сервере.

Пример ошибки ответа

Заключение

С помощью этого документа вы узнали, как использовать API для распознавания цифровых английских капчи, который может быть использован для распознавания капчи с переменной длиной. Введите содержимое изображения капчи, получите результат капчи. Надеемся, что этот документ поможет вам лучше интегрировать и использовать данный API. Если у вас есть какие-либо вопросы, пожалуйста, не стесняйтесь обращаться в нашу техническую поддержку.