baidu

Использование прокси-серверов для данной задачи не требуется.
В запросе необходимо передать одно изображение в формате base64.
Параметры запроса
ВАЖНО: получайте base64 изображения непосредственно перед созданием задачи, чтобы избежать ошибок при решении (см. раздел Как получить base64).
type<string>requiredComplexImageTask
class<string>requiredrecognition
imagesBase64<array>requiredИзображение в кодировке base64 (обёрнутое в массив, без префикса data:image/png;base64,).
Task (внутри metadata)<string>requiredНазвание задания: "baidu"
Создание задачи
В начале процесса решения возможны временные unsolvable-ответы. Это не является ошибкой - капча продолжит успешно решаться после инициализации.
https://api.capmonster.cloud/createTask
Для пользователей из России также доступен:
https://ru.api.capmonster.cloud/createTask
Подробнее в разделе createTask.
Пример запроса
{
"clientKey": "API_KEY",
"task":
{
"type": "ComplexImageTask",
"class": "recognition",
"imagesBase64": ["base64"],
"metadata": {
"Task": "baidu"
}
}
}
Пример задания:

Пример ответа
{
"errorId":0,
"taskId":143998457
}
Получение результата задачи
https://api.capmonster.cloud/getTaskResult
Для пользователей из России также доступен:
https://ru.api.capmonster.cloud/getTaskResult
Подробнее в разделе getTaskResult.
Пример запроса
{
"clientKey":"API_KEY",
"taskId": 143998457
}
Пример ответа
Градусы, на которые необходимо повернуть картинку по часовой стрелке.
{
"solution":
{
"answer":[297],
"metadata":{"AnswerType":"NumericArray"}
},
"cost":0.0005,
"status":"ready",
"errorId":0,
"errorCode":null,
"errorDescription":null
}
Как получить Base64
Изображения на страницах могут быть представлены либо в виде ссылки (URL), либо сразу закодированы в формате Base64. Чтобы найти нужное значение, кликните правой кнопкой мыши по изображению, выберите Просмотреть код (Inspect) и внимательно изучите раздел Элементы или сетку сетевых запросов – там вы сможете обнаружить ссылку или закодированное содержимое.
- Откройте ваш сайт, где отображается капча, в браузере.
- Правой кнопкой кликните по элементу капчи и выберите Inspect.

Используйте библиотеку SDK
- JavaScript / TypeScript
- Python
- C#
Показать код (для браузера)
// 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 baiduRequest = new ComplexImageTaskRecognitionRequest({
imagesBase64: ["your_image_base64"],
metaData: {
Task: "baidu",
},
});
// При необходимости можно проверить баланс
const balance = await client.getBalance();
console.log("Balance:", balance);
const result = await client.Solve(baiduRequest);
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 solveBaidu() {
const client = CapMonsterCloudClientFactory.Create(
new ClientOptions({ clientKey: API_KEY }),
);
// Для ComplexImageTaskRecognitionRequest прокси не требуются
const baiduRequest = new ComplexImageTaskRecognitionRequest({
imagesBase64: ["your_image_base64"],
metaData: {
Task: "baidu",
},
});
// При необходимости можно проверить баланс
const balance = await client.getBalance();
console.log("Balance:", balance);
const result = await client.Solve(baiduRequest);
console.log("Solution:", result.solution);
}
solveBaidu().catch(console.error);
Показать код
# https://github.com/CapMonsterCloud/capmonster-python-captcha-solver
import asyncio
from capmonstercloudclient import CapMonsterClient, ClientOptions
from capmonstercloudclient.requests import RecognitionComplexImageTaskRequest
API_KEY = "YOUR_API_KEY" # Укажите ваш API-ключ CapMonster Cloud
async def solve_baidu():
client = CapMonsterClient(
options=ClientOptions(api_key=API_KEY)
)
# Для RecognitionComplexImageTaskRequest прокси не требуются
baidu_request = RecognitionComplexImageTaskRequest(
imagesBase64=["your_image_base64"],
metadata={
"Task": "baidu",
},
)
# При необходимости можно проверить баланс
balance = await client.get_balance()
print("Balance:", balance)
result = await client.solve_captcha(baidu_request)
print("Solution:", result)
asyncio.run(solve_baidu())
Показать код
// https://github.com/CapMonsterCloud/capmonster-dotnet-captcha-solver
using System;
using System.Threading.Tasks;
using Newtonsoft.Json;
using Zennolab.CapMonsterCloud;
using Zennolab.CapMonsterCloud.Requests;
class Program
{
static async Task Main(string[] args)
{
const string API_KEY = "YOUR_API_KEY"; // Укажите ваш API-ключ CapMonster Cloud
var clientOptions = new ClientOptions
{
ClientKey = API_KEY
};
var cmCloudClient = CapMonsterCloudClientFactory.Create(clientOptions);
// Для RecognitionComplexImageTaskRequest прокси не требуются
var baiduRequest = new RecognitionComplexImageTaskRequest
{
ImagesBase64 = new[]
{
"your_image_base64"
},
Metadata = new RecognitionComplexImageTaskRequest.RecognitionMetadata
{
Task = "baidu"
}
};
// При необходимости можно проверить баланс
var balance = await cmCloudClient.GetBalanceAsync();
Console.WriteLine("Balance: " + balance);
var result = await cmCloudClient.SolveAsync(baiduRequest);
Console.WriteLine("Solution:");
Console.WriteLine(
JsonConvert.SerializeObject(
result.Solution,
Formatting.Indented
)
);
}
}
