Решение Smart Captcha

Artem

New member
В процессе поисков решения Smart Captcha и Smart Captcha Puzzle я нашел отличный способ их обхода с помощью популярного сервиса по распознаванию капч. Для тех, кто не совсем понимает, о какой капче идет речь, привожу пример на скриншоте 1.

AD_4nXeT9gPr01srPvTuhpeYKOcC2aQ58PSHkLyCT6jNBGC7NdUsB6LXMaup547_qOVJcrgq0PWhcVC_M8zTQ0Zmqy3tCInUuvqGL1rmkkkhniGOYCawN-D6v9Qamq8PzFW5FK6pq6pxyVOSjyk72fyz5sisr9aL


Первым делом нужно научиться "готовить" эту капчу. Когда вы получите эту капчу на сайте, откройте консоль браузера. Нас интересуют два ключевых элемента, которые выделены на скриншотах 2 и 3.

AD_4nXdXnZvx17w0gsY2UEZO9LsZuyBVFnhpK5YcQoQTbuvRrI5rG3dCRyQ0lIxIYe1SynUlrsdu6mgNCQu3lbMwJYAknDnLFs1lsmNFZopnGM5VqRvsQIO16j1U6NPA4woT6huTRUWLHKeX4P-ORM7xGAvKXl8h


AD_4nXctHRZt9kmRCDFu7-RybIDZxugqrKzW-n_42j4kAiwymgXykQ5-soexDkrlwu2T3XcreBPuebn54uDxagOZAeuOwDD1kdwUkPyVsXjv8TQsz5dAcA_EbA3e8vxoAtLs9R7idryb-51iqZIPYOSQmWAV9cQF

Главное правило — сохранять эти изображения в оригинальном виде, без обрезки и потери качества. Основная картинка должна быть размером 320x80, а изображение с инструкцией — 480x80.

Размер и разрешение изображений имеют большое значение для получения валидного ответа. Тестируя свое решение с помощью песочницы, я понял, что мелкие изображения инструкции плохо воспринимаются, и есть вариант, что работник просто не поймет, что от него требуется, и ткнет в рандомную часть картинки. Поэтому просто сохраняйте оригинальные размеры изображений, ничего не увеличивая и не уменьшая.

Не забывайте указывать параметр textinstructions, предпочтительно на английском языке, но если есть возможность, то и на русском тоже. Это нужно для того, чтобы не ограничиваться только англоязычными или только русскоязычными работниками - так выше вероятность, что вашу капчу решат быстро и правильно.
Например, можно использовать инструкцию:
Code:
textinstructions=select objects in the order of the instruction.

А еще нашел где-то на форуме, что можно использовать параметр img_type = smart_captcha (хотя он неофициально задокументирован). Я его протестировал и отметил, что это значительно улучшает результат при решении капчи. Вот полный массив параметров для отправки капчи:

Code:
Array
(
    [method] => base64
    [key] => KEY
    [textinstructions] => select objects in the order of the instruction
    [imginstructions] => iVBORw0KGgoAAAANSU...
    [img_type] => smart_captcha
    [coordinatescaptcha] => 1
    [body] => iVBORw0KGgoAAAANSUhEUgAAAUAA...
)

Сервис также умеет решать Puzzle Smart Captcha, хотя, как я понимаю, это пока находится в тестовом режиме. Пример для отправки пазл-капчи выглядит так:

Code:
Array
(
    [method] => base64
    [key] => KEY
    [img_type] => pazl_smart_captcha
    [coordinatescaptcha] => 1
    [body] => iVBORw...
)

В сервисе есть важные функции reportbad и reportgood, которыми я регулярно пользуюсь. В обсуждениях по решениям других видов капчи часто замечаю, что коллеги недооценивают их значение, а зря.

При использовании reportbad вы можете получить возврат средств за неверно решенную капчу. Я не знаю точно, как работает внутренняя система проверки в сервисе, но возврат средств всегда полезен. Но не стоит злоупотреблять этой функцией. Используйте reportbad только в тех случаях, когда действительно получен неверный ответ. Если будете отправлять ложные жалобы, ваш аккаунт могут заблокировать.

Функция reportgood также важна, но ею часто пренебрегают. Она помогает системе бороться с ботами и улучшать качество решения капч. Много слышал жалоб на то, что работники сервиса "халтурят", решая капчу случайными кликами.
 
Last edited by a moderator:

Xalis

New member
Cпасибо, а почему ты используешь V1 а не V2? Он на мой взгляд более удобный. Вот пример запроса методом createTask:
Code:
{
    "clientKey":"YOUR_API_KEY",
    "task": {
        "type":"CoordinatesTask",
        "body":"iVBORw0KGgoAAAANSUhEUgAAAUAA...",
        "comment":"click on the green apple"
    }
}

Ответ получаем методом getTaskResult:
Code:
{
    "errorId": 0,
    "status": "ready",
    "solution": {
        "coordinates": [
            {
                "x": 358,
                "y": 268
            }
        ]
    },
    "cost": "0.0012",
    "ip": "1.2.3.4",
    "createTime": 1692863536,
    "endTime": 1692863556,
    "solveCount": 1
}

Поддерживаются форматы изображений: JPEG, PNG, GIF
Максимальный размер файла: 600 kB
Максимальный размер изображения: 1000px с любой стороны