bills_audio

Использование прокси-серверов для данной задачи не требуется.
Аудио-капча bills_audio — это звуковая версия «капчи с чеками», где сгенерированные изображения или данные имитируют чеки и содержат, например, цифры, суммы и даты. В этом типе задачи пользователю предлагается прослушать аудиофайл и на основе услышанной информации подтвердить правильность ввода. Такой формат может выглядеть, например, следующим образом:

Параметры запроса
ВАЖНО: получайте base64 аудио непосредственно перед созданием задачи, чтобы избежать ошибок при решении (см. раздел Получение аудио и конвертация в Base64).
type<string>requiredComplexImageTask
class<string>requiredrecognition
imagesBase64<array>requiredАудио в кодировке base64, обёрнутое в массив.
Пример: [ "UklGRnjuAwBXQVZFZm10...f/2f/9/6z/vf8MAAAA"]
Task (внутри metadata)<string>requiredНазвание задания: "bills_audio"
PayloadType (внутри metadata)<string>requiredТип передаваемых данных в задаче: "Audio"
Создание задачи
https://api.capmonster.cloud/createTask
Для пользователей из России также доступен:
https://ru.api.capmonster.cloud/createTask
Подробнее в разделе createTask.
Пример запроса
{
"clientKey": "API_KEY",
"task": {
"type": "ComplexImageTask",
"class": "recognition",
"imagesBase64": [
"UklGRnjuAwBXQVZFZm10...f/2f/9/6z/vf8MAAAA"
],
"metadata": {
"Task": "bills_audio",
"PayloadType": "Audio"
}
}
}
Пример ответа
{
"errorId": 0,
"taskId": 143998457
}
Получение результата задачи
https://api.capmonster.cloud/getTaskResult
Для пользователей из России также доступен:
https://ru.api.capmonster.cloud/getTaskResult
Подробнее в разделе getTaskResult.
Пример запроса
{
"clientKey": "API_KEY",
"taskId": 143998457
}
Пример ответа
В ответе возвращаются цифры из аудио:
{
"solution": {
"answer": [6, 8, 4, 1, 2, 3],
"metadata": {"AnswerType": "Text"}
},
"cost": 0.0008,
"status": "ready",
"errorId": 0,
"errorCode": null,
"errorDescription": null
}
Получение аудио и конвертация в Base64
- Откройте страницу с капчей и запустите DevTools, затем перейдите во вкладку Network.
- Активируйте аудио-режим капчи, нажав соответствующую кнопку.
- В списке запросов найдите адрес вида:
blob:https://example.com/3be79ac6-1b3d-43ef-9a8a-7ad8877b3606 - Скопируйте этот URL и откройте его в адресной строке браузера — откроется аудиофайл капчи в формате .wav.


- Сохраните файл и выполните конвертацию из .wav в Base64 удобным для вас способом — например, с помощью кода на Node.js:
const fs = require("fs");
// Путь к исходному .wav файлу
const filePath = "C:\\Users\\User\\Downloads\\file-acbe-4fb3-9f8e-f989ba6c7fde.wav";
const fileBuffer = fs.readFileSync(filePath);
// Конвертация в Base64
const base64 = fileBuffer.toString("base64");
// Сохранение Base64-строку в текстовый файл
fs.writeFileSync("output.txt", base64);
console.log("Файл успешно конвертирован в Base64 и сохранён как output.txt");
- Используйте полученную строку Base64 в запросе на решение в CapMonster Cloud.
Используйте библиотеку SDK
- JavaScript / TypeScript
- Python
Показать код (для браузера)
// 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 billsAudioRequest = new ComplexImageTaskRecognitionRequest({
imagesBase64: ["your_audio_base64"],
metaData: {
Task: "bills_audio",
PayloadType: "Audio",
},
});
// При необходимости можно проверить баланс
const balance = await client.getBalance();
console.log("Balance:", balance);
const result = await client.Solve(billsAudioRequest);
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 solveBillsAudio() {
const client = CapMonsterCloudClientFactory.Create(
new ClientOptions({ clientKey: API_KEY }),
);
// Для ComplexImageTaskRecognitionRequest прокси не требуются
const billsAudioRequest = new ComplexImageTaskRecognitionRequest({
imagesBase64: ["your_audio_base64"],
metaData: {
Task: "bills_audio",
PayloadType: "Audio",
},
});
// При необходимости можно проверить баланс
const balance = await client.getBalance();
console.log("Balance:", balance);
const result = await client.Solve(billsAudioRequest);
console.log("Solution:", result.solution);
}
solveBillsAudio().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_bills_audio():
client = CapMonsterClient(
options=ClientOptions(api_key=API_KEY)
)
# Для RecognitionComplexImageTaskRequest прокси не требуются
bills_audio_request = RecognitionComplexImageTaskRequest(
imagesBase64=[
"your_audio_base64"
],
metadata={
"Task": "bills_audio",
"PayloadType": "Audio",
},
)
# При необходимости можно проверить баланс
balance = await client.get_balance()
print("Balance:", balance)
result = await client.solve_captcha(bills_audio_request)
print("Solution:", result)
asyncio.run(solve_bills_audio())
