Настройка профилей для нескольких действий reCAPTCHA

Автор: solvethree3 мин на чтение

Для login и checkout на одном имени хоста создайте активный профиль для каждого действия захвата и типа reCAPTCHA. Затем отправляйте каждую задачу с соответствующим action. Одного имени хоста недостаточно для выбора нужного профиля.

На этой странице

Создайте профили входа и оформления заказа

В разделе Профили сайтов настройте по одному профилю для каждого сочетания имени хоста, действия захвата и типа reCAPTCHA. В этом примере оба профиля используют accounts.example.com и Enterprise v3.

  1. 1.

    Добавьте профиль входа

    Выберите «Добавить сайт». Введите HTTPS-адрес страницы, на которой выполняется действие входа, в поле «URL страницы», выберите Enterprise v3 и задайте для поля «Действие захвата» значение login. Форма также поддерживает необязательные значения «URL перехода», «Ключ сайта» и Referer. Отправьте форму кнопкой «Добавить сайт».

  2. 2.

    Добавьте профиль оформления заказа

    Повторите действия для страницы оформления заказа на том же имени хоста, сохранив Enterprise v3 и задав для поля «Действие захвата» значение checkout.

  3. 3.

    Убедитесь, что оба профиля активны

    Перед решением задач вашему рабочему пространству должен быть доступен активный профиль. Если захват завершился с ошибкой, изучите указанную причину перед повторной попыткой. Отправка задачи с именем хоста и действием не создаёт отсутствующий профиль.

Отправляйте отдельную задачу для каждого действия

Отправляйте каждый объект ниже отдельным запросом POST /v1/tasks. Для аутентификации используйте API-ключ рабочего пространства в Authorization: Bearer и храните этот ключ на сервере.

Два действия · одно имя хоста, отдельные логические задачи
[
  {
    "site": "accounts.example.com",
    "action": "login",
    "proxy": "http://USER:PASSWORD@PROXY:PORT",
    "requestId": "login-flow-001"
  },
  {
    "site": "accounts.example.com",
    "action": "checkout",
    "proxy": "http://USER:PASSWORD@PROXY:PORT",
    "requestId": "checkout-flow-001"
  }
]

Замените имя хоста и заполнитель прокси на целевое имя хоста и URL прокси. Каждый запрос содержит один proxy; не добавляйте также proxyCandidates. Если recaptchaType не указан, по умолчанию используется enterprise-v3. Не добавляйте поля type или url в эти запросы reCAPTCHA.

Два значения requestId обозначают отдельные логические задачи. Для нового решения используйте новый ID. Если создание задачи завершилось тайм-аутом, повторно используйте тот же ID с тем же запросом, чтобы получить существующую задачу; повторное использование ID с другими входными данными вызывает конфликт.

Если действие выполнения не совпадает

Для совпадающих имени хоста и типа reCAPTCHA точное действие выполнения выбирает соответствующий профиль: login выбирает профиль входа, а checkout — профиль оформления заказа.

Для другого действия выполнения нужна одна однозначно определяемая цель с выполненным захватом. Если возможны несколько целей, не считайте, что solvethree выберет произвольный профиль. По возможности используйте настроенное действие захвата. Если сообщается о неоднозначности выбора, сравните имя хоста, тип reCAPTCHA и действие задачи с профилями в консоли и используйте фактический ответ консоли/API для диагностики несоответствия.

Уникальный ключ сайта для каждого действия не является правилом маршрутизации. Настраивайте профили по имени хоста, действию захвата и типу reCAPTCHA, а не пытайтесь различать действия с помощью ключей сайта.

Источники и справочник API

Запустите первую задачу.

Начните с $5 на балансе рабочего пространства.

Создать рабочее пространство
Настройка профилей для нескольких действий reCAPTCHA · solvethree