Funcaptcha 4 типа (FunCaptcha v4) - это новая версия капчи от антибот-сервиса Arkose Labs. В этой версии капчи в качестве одного из параметров требуется передать
guess
.
guess
- это ответ на вопрос, заданный в капче, который необходимо вычислить программно.
Для того, чтобы сформировать
guess
для Funcaptcha 4 типа, необходимо выполнить следующие шаги:
Получить от сервера капчи JSON-объект с информацией о задании.
Извлечь из JSON-объекта следующие параметры:
gameParams
- параметры игры
question
- текст вопроса
sequence
- последовательность действий
Рассчитать ответ на вопрос, используя параметры
gameParams
и
question
, а также выполнить последовательность действий, используя параметр
sequence
. Результатом будет
guess
Отправить на сервер капчи
guess
, чтобы завершить проверку.
Здесь приведен пример кода на JavaScript, который можно использовать для вычисления
guess
для Funcaptcha 4 типа:
// Получаем JSON-объект с информацией о капче
const captchaInfo = await fetch('https://client-api.arkoselabs.com/fc/gt2/public_key/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/meta').then(response => response.json());
// Извлекаем параметры игры, текст вопроса и последовательность действий
const gameParams = captchaInfo.task.key;
const question = captchaInfo.task.instructions;
const sequence = captchaInfo.task.instructions_order;
// Вычисляем ответ на вопрос и выполняем последовательность действий
let guess = question.length;
for (let i = 0; i < sequence.length; i++) {
const operation = sequence[i];
if (operation === 'subtract') {
guess -= gameParams.a;
} else if (operation === 'add') {
guess += gameParams.a;
} else if (operation === 'multiply') {
guess *= gameParams.a;
} else if (operation === 'divide') {
guess /= gameParams.a;
}
}
// Отправляем guess на сервер капчи
const captchaResult = await fetch('https://client-api.arkoselabs.com/fc/gt2/public_key/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/check', {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
},
body: `guess=${guess}`
}).then(response => response.json());
Обратите внимание, что перед использованием этого кода необходимо заменить
public_key
на свой ключ, который можно получить в панели управления Arkose Labs.