Cutcaptcha
Основанный на токенах метод обхода Cutcaptcha.
Полученный токен необходимо установить в качестве атрибута value
для элемента input#cap_token
и/или передать функции обратного вызова.
Типы задач
- CutCaptchaTaskProxyless - мы используем собственный пул прокси-серверов для решения капч
- CutCaptchaTask - мы используем переданный вами прокси
Спецификация для типа задачи CutCaptchaTaskProxyless
Свойство | Тип | Обязателен | Описание |
---|---|---|---|
type | Строка | Да | Тип задачи: CutCaptchaTaskProxyless CutCaptchaTask |
websiteURL | Строка | Да | Полный URL-адрес целевой веб-страницы, на которую загружается капча. Мы не открываем страницу, это не проблема, если страница доступна только для авторизованных пользователей |
miseryKey | Строка | Да | Значение перемернной CUTCAPTCHA_MISERY_KEY , определенной на странице |
apiKey | Строка | Да | Значение аттрибута data-apikey тега body внутри iframe капчи. Также, имя javascript-файла, подключаемого на странице |
Спецификация для типа задачи CutCaptchaTask
Задача CutCaptchaTask
расширяет CutCaptchaTaskProxyless
, добавляя набор параметров, связанных с прокси, перечисленных ниже.
Свойство | Тип | Обязателен | Описание |
---|---|---|---|
proxyType | Строка | Да | Тип прокси: http socks4 socks5 |
proxyAddress | Строка | Да | IP-адрес прокси-сервера или имя хоста |
proxyPort | Число | Да | Порт прокси-сервера |
proxyLogin | Строка | Нет | Логин используемый для аунтефикации на прокси-сервере |
proxyPassword | Строка | Нет | Пароль используемый для аунтефикации на прокси-сервере |
Примеры запросов
Метод: createTask
Эндпоинт API: https://api.rucaptcha.com/createTask
Пример запроса CutCaptchaTaskProxyless
{
"clientKey": "YOUR_API_KEY",
"task": {
"type": "CutCaptchaTaskProxyless",
"miseryKey": "a1488b66da00bf332a1488993a5443c79047e752",
"apiKey": "SAb83IIB",
"websiteURL": "https://example.cc/foo/bar.html"
}
}
Пример запроса CutCaptchaTask
{
"clientKey": "YOUR_API_KEY",
"task": {
"type": "CutCaptchaTask",
"miseryKey": "a1488b66da00bf332a1488993a5443c79047e752",
"apiKey": "SAb83IIB",
"websiteURL": "https://example.cc/foo/bar.html",
"proxyType": "http",
"proxyAddress": "1.2.3.4",
"proxyPort": "8080",
"proxyLogin": "user23",
"proxyPassword": "p4$w0rd"
}
}
Пример ответа
Метод: getTaskResult
Эндпоинт API: https://api.rucaptcha.com/getTaskResult
{
"errorId": 0,
"status": "ready",
"solution": {
"token": "BazM23cpFUUyAAAdqPwNEDZx0REtH3ss"
},
"cost": "0.00299",
"ip": "1.2.3.4",
"createTime": 1692863536,
"endTime": 1692863556,
"solveCount": 1
}
Использование токена
Полученный токен поместите в значение тега input
с id = cap_token
, затем отправьте форму, внутри которой находится этот input
, например:
document.querySelector('input#cap_token').value='BazM23cpFUUyAAAdqPwNEDZx0REtH3ss'
document.querySelector('form').submit()
Если на странице задана коллбек-функция, то можно отправить токен через нее:
capResponseCallback('BazM23cpFUUyAAAdqPwNEDZx0REtH3ss')