Как использовать полученный токен
После ответа getTaskResult со status: "ready" возьмите объект solution. В Python SDK solve() возвращает уже сам solution; get_task_result() возвращает полный ответ, включая status и solution.
SDK получает решение от API. Передачу результата на целевой сайт выполняет ваша интеграция. Проверьте, какое поле формы, callback или запрос к бэкенду использует ваш сайт. Имена функций и селекторы ниже — примеры; подставьте значения из вашей страницы.
reCAPTCHA v2 / v3 / Enterprise#
Используйте solution.gRecaptchaResponse. Если сайт отправляет поле g-recaptcha-response, заполните это поле в нужной форме и выполните обычный сценарий отправки сайта:
const token = solution.gRecaptchaResponse;
const field = document.querySelector('[name="g-recaptcha-response"]');
if (field) field.value = token;
Если интеграция использует callback, передайте токен в фактическую функцию сайта, например onCaptchaSolved(token). Присваивание поля само по себе не вызывает callback.
Cloudflare Turnstile#
Используйте solution.token в поле cf-turnstile-response или в callback, заданном при инициализации Turnstile.
const field = document.querySelector('[name="cf-turnstile-response"]');
if (field) field.value = solution.token;
Для Cloudflare Challenge передайте параметры action, data, pagedata и текущий userAgent браузера. Не меняйте этот User-Agent при вызове callback и не заменяйте его значением solution.userAgent. Сохраняйте согласованные параметры страницы, прокси и сессии. Параметры задачи.
Yandex SmartCaptcha#
Используйте solution.token в поле smart-token или передайте его в callback вашей интеграции SmartCaptcha:
const field = document.querySelector('[name="smart-token"]');
if (field) field.value = solution.token;
GeeTest v3#
Решение содержит challenge, validate, seccode. Передайте значения в запрос проверки вашего сайта. Если сайт использует имена полей GeeTest, сопоставление выглядит так:
const verification = {
geetest_challenge: solution.challenge,
geetest_validate: solution.validate,
geetest_seccode: solution.seccode,
};
Создание этого объекта не отправляет запрос и не вызывает обработчик успеха. Подключите его к существующему сценарию проверки сайта. Для каждой новой задачи нужен свежий challenge.
GeeTest v4#
Сохраните все пять полей решения и передайте их в проверку сайта в ожидаемом формате:
const verification = {
captcha_id: solution.captcha_id,
lot_number: solution.lot_number,
pass_token: solution.pass_token,
gen_time: solution.gen_time,
captcha_output: solution.captcha_output,
};
Tencent#
Передайте значения решения в callback, который ваш сайт передал конструктору TencentCaptcha. Сохраните числовой тип ret:
myCallbackFunction({
ret: solution.ret,
ticket: solution.ticket,
randstr: solution.randstr,
appid: solution.appid,
});
myCallbackFunction — пример имени; используйте фактический callback вашей страницы.
ImageToText / Coordinates#
ImageToTextTask возвращает solution.text: введите текст в соответствующее поле формы. CoordinatesTask, включая Яндекс по картинке, возвращает solution.coordinates — список {x, y}. Выполните клики в указанном порядке относительно левого верхнего угла исходной картинки. Если картинка на странице масштабирована, пересчитайте координаты к её отображаемому размеру.
Ответ ready означает, что API вернул решение. Принятие результата сайтом проверяется отдельно в вашей интеграции.