Меню документации

GeeTestTask: решить капчу от geetest.com с прокси

Этот тип задач решает капчу GeeTest в браузере наших работников. Ваше приложение присылает адрес сайта, ключ gt, ключи challenge и после решения задачи получает решение, состояшее из трех токенов.

Примеры

Объект задачи

Свойство Тип Требуется Назначение
type Строка Да GeeTestTask
websiteURL Строка Да Адрес целевой страницы. Может находиться в любом месте сайта, в том числе в закрытом для подписчиков разделе. Наши работники не посещают сайт, а вместо этого эмулируют посещение страницы.
gt Строка Да Публичный ключ домена, редко обновляется.
challenge Строка Да Меняющийся ключ. Убедитесь что получаете каждый раз новый ключ для каждой капчи, иначе вы будете платить за каждую капчу с ошибкой.
geetestApiServerSubdomain Строка Нет Опциональный поддомен API. Может потребоваться для некоторых имплементаций.
geetestGetLib Строка Нет Требуется для некоторых имплементаций. Отправляйте JSON закодированный в строку. Значение может быть отслежено в консоли разработчика. Установите точку останова до вызова функции "initGeetest".
proxyType Строка Да Тип прокси
http - обычный http/https прокси
socks4 - socks4 прокси
socks5 - socks5 прокси
proxyAddress Строка Да Адрес прокси в ipv4/ipv6. Имена хостов или адреса из локальной сети не допускаются.
proxyPort Integer Да Порт прокси
proxyLogin Строка Нет Логин если требуется авторизация прокси (basic)
proxyPassword Строка Нет Пароль прокси
userAgent Строка Да User-Agent браузера, который нужно эмулировать. Требуется указывать юзерагент современного браузера, иначе гугл попросит "обновить ваш браузер".

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

CURL
          curl -i -H "Accept: application/json" \
     -H "Content-Type: application/json" \
     -X POST -d '{
    "clientKey":"YOUR_API_KEY",
    "task":
        {
            "type":"GeeTestTask",
            "websiteURL":"http://mywebsite.com/geetest/test.php",
            "gt":"874703612e5cac182812a00e273aad0d",
            "challenge":"a559b82bca2c500101a1c8a4f4204742",
            "proxyType":"http",
            "proxyAddress":"8.8.8.8",
            "proxyPort":8080,
            "proxyLogin":"proxyLoginHere",
            "proxyPassword":"proxyPasswordHere",
            "userAgent":"MODERN_USER_AGENT_HERE"
        }
}' https://api.anti-captcha.com/createTask
        

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

JSON без ошибок
          {
    "errorId": 0,
    "taskId": 7654321
}
        
JSON с ошибками
          {
    "errorId": 1,
    "errorCode": "ERROR_KEY_DOES_NOT_EXIST",
    "errorDescription": "Account authorization key not found in the system"
}
        

Получить результат

Используйте метод getTaskResult чтобы получить результат. Дайте работнику некоторое время перед первым запросом, около 5 секунд. Если работник все еще занят, повторите запрос через 3 секунды.

Объект решения задачи

Свойство Тип Назначение
challenge Строка Строка-хэш, требуется для взаимодействия с формой на целевом сайте.
validate Строка Строка-хэш, тоже требуется.
seccode Строка Еще одна строка, мы без понятия зачем их 3 штуки.

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

JSON без ошибок
          {
    "errorId":0,
    "status":"ready",
    "solution":
    {
        "challenge":"3c1c5153aa48011e92883aed820069f3hj",
        "validate":"47ad5a0a6eb98a95b2bcd9e9eecc8272",
        "seccode":"83fa4f2d23005fc91c3a015a1613f803|jordan"
    },
    "cost":"0.001500",
    "ip":"46.98.54.221",
    "createTime":1472205564,
    "endTime":1472205570,
    "solveCount":"0"
}
        

Пример использования токенов