Binance - Binance captcha
- Данная задача будет выполняться с использованием наших прокси-серверов.
- Используйте только для входа в систему с помощью своей учетной записи.
Параметры запроса
type
<string>requiredBinanceTask
websiteURL
<string>requiredАдрес основной страницы, на которой решается капча.
websiteKey
<string>requiredУникальный параметр для раздела вашего сайта. Значение параметра bizId
, bizType
или bizCode
. Его можно взять из трафика (см. описание ниже).
validateId
<string>requiredДинамический ключ. Значение параметра validateId
, securityId
или securityCheckResponseValidateId
. Ег можно взять из трафика (см. описание ниже).
userAgent
<string>optionalUser-Agent браузера. Можно передать свой или указать последний UA от ОС Windows: userAgentPlaceholder
proxyType
<string>optionalhttp - обычный http/https прокси;
https - попробуйте эту опцию только если "http" не работает (требуется для некоторых кастомных прокси);
socks4 - socks4 прокси;
socks5 - socks5 прокси.
proxyAddress
<string>optionalIP адрес прокси IPv4/IPv6. Не допускается:
- использование имен хостов;
- использование прозрачных прокси (там где можно видеть IP клиента);
- использование прокси на локальных машинах.
proxyPort
<integer>optionalПорт прокси.
proxyLogin
<string>optionalЛогин прокси-сервера.
proxyPassword
<string>optionalПароль прокси-сервера.
Как получить websiteKey
и validateId
Включите инструменты разработчика, перейдите на вкладку Network, активируйте капчу и посмотрите запросы. В некоторых из них будет нужное вам значение параметров. Например, параметры:
bizCode: "CMC_register", securityId: "09295759baca4d4fbeae80d9ffeaefd8"
или
bizId: "CMC_register", securityCheckResponseValidateId: "09295759baca4d4fbeae80d9ffeaefd8"
или
bizType: "login", validateId: "ff965ea6216b46f3825fa827ecaf297f"
или
bizId: "login", securityCheckResponseValidateId: "ff965ea6216b46f3825fa827ecaf297f"
Необходимые для решения капчи параметры можно получить, выполнив JavaScript:
let originalBCaptcha = window.BCaptcha;
let BCaptchaData;
Object.defineProperty(window, 'BCaptcha', {
get: function() {
return function(args) {
const BCaptcha = new originalBCaptcha(args);
let BCaptchaShow = BCaptcha.__proto__.show
BCaptcha.__proto__.show = function(args) {
BCaptchaData = args;
return 1;
};
return BCaptcha;
}
}
});
Затем можно получить параметры, например так BCaptchaData.securityCheckResponseValidateId
.
Метод создания задачи
- BinanceTask (без прокси)
- BinanceTask (при использовании прокси)
https://api.capmonster.cloud/createTask
Запрос
{
"clientKey": "API_KEY",
"task":
{
"type": "BinanceTask",
"websiteURL": "https://example.com",
"websiteKey": "login",
"validateId": "cb0bfefa598b4c3887661fde54ecd57b",
"userAgent": "userAgentPlaceholder"
}
}
Ответ
{
"errorId":0,
"taskId":407533072
}
https://api.capmonster.cloud/createTask
Запрос
{
"clientKey": "API_KEY",
"task":
{
"type": "BinanceTask",
"websiteURL": "https://example.com",
"websiteKey": "login",
"validateId": "cb0bfefa598b4c3887661fde54ecd57b",
"userAgent": "userAgentPlaceholder",
"proxyType":"http",
"proxyAddress":"8.8.8.8",
"proxyPort":8080,
"proxyLogin":"proxyLoginHere",
"proxyPassword":"proxyPasswordHere"
}
}
Ответ
{
"errorId":0,
"taskId":407533072
}
Метод получения результата задачи
Используйте метод getTaskResult, чтобы получить решение Binance.
https://api.capmonster.cloud/getTaskResult
Запрос
{
"clientKey":"API_KEY",
"taskId": 407533072
}
Ответ
{
"errorId":0,
"status":"ready",
"solution":
{
"token":"captcha#09ba4905a79f44f2a99e44f234439644-ioVA7neog7eRHCDAsC0MixpZvt5kc99maS943qIsquNP9D77",
"userAgent":"userAgentPlaceholder"
}
}
Используйте библиотеку SDK
- JavaScript
- Python
- C#
// https://github.com/ZennoLab/capmonstercloud-client-js
import { CapMonsterCloudClientFactory, ClientOptions, BinanceRequest /*BinanceRequest*/ } from '@zennolab_com/capmonstercloud-client';
document.addEventListener('DOMContentLoaded', async () => {
const cmcClient = CapMonsterCloudClientFactory.Create(new ClientOptions({ clientKey: '<your capmonster.cloud API key>' }));
console.log(await cmcClient.getBalance());
const binanceRequest = new BinanceRequest({
websiteURL: 'https://example.com',
websiteKey: 'websiteKey',
validateId: 'validateId',
});
// const binanceRequest = new BinanceRequest({
// websiteURL: 'https://example.com',
// websiteKey: 'websiteKey',
// validateId: 'validateId',
// proxyType: 'http',
// proxyAddress: '8.8.8.8',
// proxyPort: 8080,
// proxyLogin: 'proxyLoginHere',
// proxyPassword: 'proxyPasswordHere',
// });
console.log(await cmcClient.Solve(binanceRequest));
});
# https://github.com/ZennoLab/capmonstercloud-client-python
import asyncio
from capmonstercloudclient import CapMonsterClient, ClientOptions
from capmonstercloudclient.requests import BinanceTaskRequest
client_options = ClientOptions(api_key="your_api_key") # Replace with your CapMonster Cloud API key
cap_monster_client = CapMonsterClient(options=client_options)
binance_request = BinanceTaskRequest(
websiteUrl="https://example.com", # URL with captcha
websiteKey="login",
validateId="cb0bfefa598b4c3887661fde54ecd57b",
userAgent="userAgentPlaceholder",
proxyType="http",
proxyAddress="8.8.8.8",
proxyPort=8080,
proxyLogin="proxyLoginHere",
proxyPassword="proxyPasswordHere"
)
async def solve_captcha():
return await cap_monster_client.solve_captcha(binance_request)
responses = asyncio.run(solve_captcha())
print(responses)
// https://github.com/ZennoLab/capmonstercloud-client-dotnet
// BinanceTaskRequest:
using Zennolab.CapMonsterCloud.Requests;
using Zennolab.CapMonsterCloud;
class Program
{
static async Task Main(string[] args)
{
var clientOptions = new ClientOptions
{
ClientKey = "your_api_key" // Replace with your CapMonster Cloud API key
};
var cmCloudClient = CapMonsterCloudClientFactory.Create(clientOptions);
var binanceRequest = new BinanceTaskRequest
{
WebsiteUrl = "https://example.com",
WebsiteKey = "login",
ValidateId = "cb0bfefa598b4c3887661fde54ecd57b",
UserAgent = "userAgentPlaceholder" // Use the current userAgent
};
var binanceResult = await cmCloudClient.SolveAsync(binanceRequest);
Console.WriteLine("Captcha Solution: " + binanceResult.Solution.Value);
}
}