Looking for international version of our service? Go to 2captcha.com

Логотип «RuCaptcha»Перейти на главную страницу

Alibaba CAPTCHA

alibaba

Основанный на токенах метод обхода Alibaba CAPTCHA.

ВАЖНО: некоторые параметры генерируются динамически и могут отличаться при каждой загрузке страницы, защищённой Alibaba CAPTCHA.

Типы задач

  • AlibabaTaskProxyless — мы используем собственный пул прокси-серверов для решения капч.
  • AlibabaTask — мы используем переданный вами прокси.

Как найти все необходимые параметры

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

Шаг 1. Получение страницы с капчей

  1. Откройте сайт и выполните действие, которое вызывает появление капчи (например, попытку авторизации).
  2. Откройте DevTools → Network.
  3. Найдите запрос, после которого сервер возвращает HTML-страницу капчи вместо обычного JSON-ответа.

В ответе страницы обычно присутствует объект вида:

javascript Copy
var requestInfo = {
  data,
  region,
  sceneId,
  token,
  traceid,
  type,
  userId,
  userUserId
}

Шаг 2. Извлечение параметров из requestInfo

Из объекта requestInfo необходимо получить следующие значения:

Параметр задачи Источник
sceneId поле sceneId
userId поле userId
userUserId поле userUserId
verifyType поле type
region поле region
UserCertifyId поле traceid

Дополнительно необходимо сохранить:

Параметр Источник
u_atoken значение token
u_asig значение traceid

Эти параметры используются при повторной отправке запроса после успешного решения капчи.

Шаг 3. Поиск sceneId через сетевые запросы

Если объект requestInfo отсутствует или обфусцирован, значение sceneId можно найти альтернативным способом:

  1. Перейдите во вкладку Network.

  2. Выполните поиск по ключам:

    • sceneId
    • CaptchaSceneId
    • sId
  3. Проверьте содержимое запросов и ответов, связанных с проверкой или инициализацией капчи.

Шаг 4. Получение prefix

Параметр prefix обычно содержится в запросах, связанных с загрузкой задания капчи.

Для поиска:

  1. Найдите запросы, выполняемые при инициализации капчи.
  2. Откройте URL запроса.
  3. Найдите параметр prefix в строке запроса, параметрах URL или в теле ответа сервера.

Шаг 5. Получение apiGetLib

Параметр apiGetLib представляет собой ссылку на JavaScript-библиотеку капчи.

Обычно её можно получить одним из следующих способов:

  • Найти тег <script> на странице капчи, содержащий загрузку библиотеки.
  • Найти запрос к файлу AliyunCaptcha.js во вкладке Network.
  • Сформировать URL по шаблону, используемому сайтом.

Пример:

text Copy
https://o.example.com/captcha-frontend/aliyunCaptcha/AliyunCaptcha.js?t=2041

Итоговый набор параметров

В результате должны быть получены следующие значения:

json Copy
{
  "sceneId": "...",
  "prefix": "...",
  "userId": "...",
  "userUserId": "...",
  "verifyType": "...",
  "region": "...",
  "UserCertifyId": "...",
  "apiGetLib": "..."
}

Дополнительно необходимо сохранить:

json Copy
{
  "u_atoken": "...",
  "u_asig": "..."
}

Эти значения используются для повторного выполнения запроса после получения решения капчи.

Спецификация для типа задачи AlibabaTaskProxyless

Свойство Тип Обязателен Описание
type Строка Да Тип задачи:
AlibabaTaskProxyless
AlibabaTask
websiteURL Строка Да Полный URL-адрес целевой веб-страницы, на которую загружается капча
sceneId Строка Да Идентификатор сценария капчи, передаётся в следующем формате: "sceneId":"1ww7426c4"
prefix Строка Да Параметр инициализации капчи, передаётся в URL запроса, используемого для загрузки текста задания на странице. Например, если URL имеет вид: https://dlw3kug.captcha-open.example.aliyuncs.com/, то значение параметра prefix соответствует поддомену — dlw3kug
userId Строка Нет Уникальный идентификатор пользователя или сессии на стороне сайта
userUserId Строка Нет Дополнительный (вторичный) идентификатор пользователя
verifyType Строка Нет Версия или тип механизма проверки капчи
region Строка Нет Регион сервера или дата-центра, через который обрабатывается капча
userCertifyId Строка Нет Уникальный ID проверки, связанный с текущей сессией капчи
apiGetLib Строка Нет Ссылка на JS-библиотеку капчи, используемую сайтом. Значение формируется на стороне клиента и может генерироваться динамически при каждом рендеринге страницы
userAgent Строка Нет User-Agent браузера, с которым открывается страница

Спецификация для типа задачи AlibabaTask

Свойство Тип Обязателен Описание
proxyType Строка Да Тип прокси:
http
socks4
socks5
proxyAddress Строка Да IP-адрес прокси-сервера или имя хоста
proxyPort Число Да Порт прокси-сервера
proxyLogin Строка Нет Логин для аутентификации на прокси-сервере
proxyPassword Строка Нет Пароль для аутентификации на прокси-сервере

Примеры запросов

Метод: createTask

Эндпоинт API: https://api.rucaptcha.com/createTask

Пример запроса AlibabaTaskProxyless

json Copy
{
   "clientKey":"YOUR_API_KEY",
   "task":{
      "type":"AlibabaTaskProxyless",
      "websiteUrl":"https://www.example.com",
      "sceneId":"abc123xyz4",
      "prefix":"def456gh",
      "userId":"Abc123Def456Ghi789Jkl012Mno345Pqr678Stu901=",
      "userUserId":"Xyz987Abc654Def321Ghi098Jkl765Mno432Pqr109=",
      "verifyType":"1.0",
      "region":"sgp",
      "UserCertifyId":"abc123def456ghi789jkl012mno345pq",
      "apiGetLib":"https://o.example.com/captcha-frontend/aliyunCaptcha/AliyunCaptcha.js?t=1234",
      "userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36"
   }
}

Пример запроса AlibabaTask с прокси

json Copy
{
   "clientKey":"YOUR_API_KEY",
   "task":{
      "type":"AlibabaTask",
      "websiteUrl":"https://www.example.com",
      "sceneId":"abc123xyz4",
      "prefix":"def456gh",
      "userId":"Abc123Def456Ghi789Jkl012Mno345Pqr678Stu901=",
      "userUserId":"Xyz987Abc654Def321Ghi098Jkl765Mno432Pqr109=",
      "verifyType":"1.0",
      "region":"sgp",
      "UserCertifyId":"abc123def456ghi789jkl012mno345pq",
      "apiGetLib":"https://o.example.com/captcha-frontend/aliyunCaptcha/AliyunCaptcha.js?t=1234",
      "userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
      "proxyType":"http",
      "proxyAddress":"1.2.3.4",
      "proxyPort":8080,
      "proxyLogin":"login",
      "proxyPassword":"password"
   }
}

Пример ответа

Метод: getTaskResult

Эндпоинт API: https://api.rucaptcha.com/getTaskResult

json Copy
{
  "errorId": 0,
  "status": "ready",
  "solution": {
    "data": {
      "tokens": "{\"sceneId\":\"abc123xyz4\",\"certifyId\":\"aBcDeF1234\",\"deviceToken\":\"ABC_WEB#1234...xyz789=\",\"data\":\"AbC123xYz...DeF456qWe789\"}"
    }
  }
}