Перейти к основному содержимому
Возникают проблемы с получением токена?
Свяжитесь с поддержкой

Oocl_rotate_new

Внимание!

Использование прокси-серверов для данной задачи не требуется.


В запросе необходимо передать два изображения: фон и круг.

Параметры запроса


ВАЖНО: получайте base64 изображений непосредственно перед созданием задачи, чтобы избежать ошибок при решении (см. раздел Как получить base64).


type<string>required

ComplexImageTask


class<string>required

recognition


imagesBase64<array>required

Массив изображений в кодировке base64 (без префикса data:image/png;base64,).


Task (внутри metadata)<string>required

Название задания: "oocl_rotate_new"

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

POST
https://api.capmonster.cloud/createTask

Альтернативный адрес метода

Для пользователей из России также доступен:

https://ru.api.capmonster.cloud/createTask

Подробнее в разделе createTask.

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

{
"clientKey": "API_KEY",
"task": {
"type": "ComplexImageTask",
"class": "recognition",
"imagesBase64": [
"{background_base64}",
"{circle_base64}"
],
"metadata": {
"Task": "oocl_rotate_new"
}
}
}

Пример фона (background_base64):

Пример круга (circle_base64):

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

{
"errorId":0,
"taskId":407533072
}

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

POST
https://api.capmonster.cloud/getTaskResult

Альтернативный адрес метода

Для пользователей из России также доступен:

https://ru.api.capmonster.cloud/getTaskResult

Подробнее в разделе getTaskResult.

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

{
"clientKey":"API_KEY",
"taskId": 407533072
}

Пример ответа
Градусы, на которые необходимо повернуть круг по часовой стрелке.

{
"errorId":0,
"status":"ready",
"errorCode":null,
"errorDescription":null,
"solution":
{
"answer":[130.90909],
"metadata":{"AnswerType":"NumericArray"}
}
}

Как получить Base64

Изображения на страницах могут быть представлены либо в виде ссылки (URL), либо сразу закодированы в формате Base64. Чтобы найти нужное значение, кликните правой кнопкой мыши по изображению, выберите Просмотреть код (Inspect) и внимательно изучите раздел Элементы или сетку сетевых запросов – там вы сможете обнаружить ссылку или закодированное содержимое.

  1. Откройте ваш сайт, где отображается капча, в браузере.
  2. Правой кнопкой кликните по элементу капчи и выберите Inspect.

base64ComplexImage

Используйте библиотеку SDK

Показать код (для браузера)
// https://github.com/CapMonsterCloud/capmonster-nodejs-captcha-solver

import {
CapMonsterCloudClientFactory,
ClientOptions,
ComplexImageTaskRecognitionRequest
} from "@zennolab_com/capmonstercloud-client";

document.addEventListener("DOMContentLoaded", async () => {

const API_KEY = "YOUR_API_KEY"; // Укажите ваш API-ключ CapMonster Cloud

const client = CapMonsterCloudClientFactory.Create(
new ClientOptions({ clientKey: API_KEY })
);

// Для ComplexImageTaskRecognitionRequest прокси не требуются
const ooclRequest = new ComplexImageTaskRecognitionRequest({
imagesBase64: [
"background_base64",
"circle_base64",
],
metaData: {
Task: "oocl_rotate_new",
},
});

// При необходимости можно проверить баланс
const balance = await client.getBalance();
console.log("Balance:", balance);

const result = await client.Solve(ooclRequest);
console.log("Solution:", result.solution);
});
Показать код (Node.js)
// https://github.com/CapMonsterCloud/capmonster-nodejs-captcha-solver

const {
CapMonsterCloudClientFactory,
ClientOptions,
ComplexImageTaskRecognitionRequest,
} = require("@zennolab_com/capmonstercloud-client");

const API_KEY = "YOUR_API_KEY"; // Укажите ваш API-ключ CapMonster Cloud

async function solveOoclRotateNew() {
const client = CapMonsterCloudClientFactory.Create(
new ClientOptions({ clientKey: API_KEY }),
);

// Для ComplexImageTaskRecognitionRequest прокси не требуются
const ooclRequest = new ComplexImageTaskRecognitionRequest({
imagesBase64: [
"background_base64",
"circle_base64",
],
metaData: {
Task: "oocl_rotate_new",
},
});

// При необходимости можно проверить баланс
const balance = await client.getBalance();
console.log("Balance:", balance);

const result = await client.Solve(ooclRequest);
console.log("Solution:", result.solution);
}

solveOoclRotateNew().catch(console.error);