Решение Funcaptcha методом Grid
Arkose Labs представляет различные типы защиты.
ruCaptcha - это сервис для решения капчи (Funcaptcha) Arkose Labs.
В этой статье мы рассмотрим 2 варианта выполнения заданий для пользователя.
В инструкции описан процесс взаимодействия с API.
Подробнее о задачах
У Funcaptcha есть два основных варианта задания:
- Standard grid captcha
- funcaptcha_compare
Тип капчи Grid:
В этом случае пользователю предлагается набор изображений, разделённых на секции с числовыми метками. Он должен выбрать изображение, соответствующее предоставленному текстовому описанию.Пример: Слева находится изображение с числом 8, а справа — набор изображений с различными объектами. Пользователю нужно выбрать изображение, где сумма значений объектов равна 8.
Пример изображения:
Тип капчи Funcaptcha_compare
В этой версии также есть изображение внизу, но на этот раз с набором иконок. В верхней части изображения находится набор иконок с различными перестановками. Пользователь должен сопоставить иконки на левой стороне с иконками в правом верхнем углу.Пример: Показаны иконки с фруктами, а вверху справа такие же иконки, но в другом порядке. Пользователю нужно сопоставить каждую иконку.
Пример изображения:
Как разгадать капчу с помощью API?
1. Получить изображение капчи
Чтобы разгадать капчу таким образом, вам нужно перенести изображение ЦЕЛИКОМ.
- Откройте вкладку "Network" в инструментах разработчика вашего браузера.
- Найдите запрос с изображением с капчей, это запрос с URL-адресом
https://client-api.arkoselabs.com/rtig/image...
- В разделе "Headers" вы найдете поле, содержащее URL-адрес изображения с капчей.
- Откройте изображение и сохраните его, после чего вы сможете преобразовать его в base64.
2. Получить текстовую инструкцию
- Найдите элемент с инструкциями для ввода капчи
var taskElement = document.querySelector('.sc-1io4bok-0');
- Get text from element
var taskText = taskElement.textContent || taskElement.innerText;
Важно: textinstructions
должен быть на английском языке!
Примеры запросов
Необходимо присылать исходные файлы изображений, а не скриншоты.
Используя APIv1
- API endpoint: https://rucaptcha.com/in.php
Используя APIv2
- Method: createTask
API endpoint: https://api.rucaptcha.com/createTask
GridTask
APIv1
{
"method": "base64",
"key": "key",
"recaptcha": 1,
"json": 1,
"img_type": "funcaptcha",
"textinstructions": "pick the image where the darts add up to 8",
"body": "/9j/4AAQSkZJRgABAQEAYABgAAD/4QBoRXhpZgAA"
}
APIv2
{
"clientKey": "key",
"task": {
"type": "GridTask",
"body": "/9j/4AAQSkZJRgABAQEAYABgAAD/4QBoRXhpZg",
"comment": "pick the image where the darts add up to 8",
"imgType": "funcaptcha"
}
}
Funcaptcha_compare type
APIv1
{
"method": "base64",
"key": "key",
"recaptcha": 1,
"json": 1,
"img_type": "funcaptcha_compare",
"textinstructions": "Match the icons on the left with the icons on the top faces of the dice (1 of 1)",
"body": "/9j/2wCEAAoHBwgHBgoICAgLCgoLDhgQDg0NDh0VFhEYIx8lJCIfIiEmKzcvJik0KSEiMEExNDk7Pj4+JS5ESUM8SDc9PjsBCgsL"
}
APIv2
{
"clientKey": "key",
"task": {
"type": "GridTask",
"body": "/9j/2wCEAAoHBwgHBgoICAgLCgoLDhgQDg0",
"comment": "Match the icons on the left with the icons on the top faces of the dice (1 of 1)",
"imgType": "funcaptcha_compare"
}
}
Примечание: Изображение должно быть неповрежденным, без изменений в размере или обрезки.
Пример ответа
Из полученного ответа мы берем captcha_id и, используя его, делаем GET запрос:
Для APIv1
https://rucaptcha.com/res.php?
Для APIv2
https://api.rucaptcha.com/getTaskResult
Результат содержит количество кликов, которые необходимо выполнить, например:
{
"status": 1,
"request": "click:3"
}
Используем ответ
Результат запроса представлен набором в формате "клик":3". Число указывает, сколько раз вы должны нажать, чтобы успешно разгадать капчу.
Что делать, если ответ не был принят?
Вы можете отправить жалобу reportbad и капча уйдет на проверку модератором.
Так же рекомендуем присылать нам отчёты и о положительных результатах - reportgood.
Полезные ссылки
Поддержка
Если у вас все еще есть вопросы по поводу сервиса, вы можете задать их:
- Создать заявку
- Отправьте электронное письмо в службу поддержки@{{имя хоста}}
- Skype
Мы ценим обратную связь и хотим убедиться, что сервис соответствует вашим потребностям.