TextCaptcha

Задачи с текстом на картинке.

Пример задания

Введите текст с картинки

Строчные или прописные буквы
Отправить

1. Создание задачи

POSThttps://api.capsola.cloud/create

Запрос

Ключ передаётся в заголовке X-API-Key, тело — JSON.

json
{
  "type": "TextCaptcha",
  "task": "IMAGE_BASE_64"
}
typestring обязательный

Тип задачи — TextCaptcha.

taskbase64 обязательный

Изображение капчи.

app_idstring

Идентификатор приложения разработчика — выдаётся в партнёрском разделе.

Ответ

json
{
  "status": 1,
  "response": "9051d4b4-0000-44d3-a4c2-db0215227862"
}
statusnumber

1 — задача принята, 0 — ошибка.

responsestring

Идентификатор задачи или код ошибки.

2. Получение результата

POSThttps://api.capsola.cloud/result

Запрос

json
{
  "id": "9051d4b4-0000-44d3-a4c2-db0215227862"
}
idstring обязательный

Идентификатор задачи из ответа на /create.

Ответ

json
{
  "status": 1,
  "response": "Фраза для ввода"
}
statusnumber

1 — задача решена, 0 — ошибка.

responsestring

Текст с картинки или код ошибки.

Ответ CAPCHA_NOT_READY означает, что задача ещё в работе. Подождите 2–10 секунд и повторите запрос — и так до успешного результата или другой ошибки.


Примеры использования

import requests
import time
import base64

url_create = 'https://api.capsola.cloud/create'
url_result = 'https://api.capsola.cloud/result'
headers = {
    'Content-type': 'application/json',
    'X-API-Key': 'API_KEY'
}

# Create task

image_url = 'https://capsola.cloud/examples/text/task.png'
image_response = requests.get(image_url).content
IMAGE_BASE_64 = base64.b64encode(image_response)

data = {
  'type': 'TextCaptcha',
  'task': IMAGE_BASE_64,
}

request = requests.post(url = url_create, json = data, headers=headers)
request = request.json()
print(request)

# Get result
if request['status'] == 1:
    task_id = request['response']
    while True:
        time.sleep(2)
        data = {
            'id': task_id
        }
        request = requests.post(url=url_result, json=data, headers = headers)
        request = request.json()
        print(request)
        if request['status'] == 1:
            break
        if request['status'] == 0 and request['response'] != 'CAPCHA_NOT_READY':
            break