Pull to refresh

Как обойтись без капчи?

Reading time 2 min
Views 130K
К сожалению, на многих сайтах без особой необходимости используют капчи. Хотя можно побороть спам и незаметными для пользователя способами. Особенно, капчу больно видеть на небольших коммерческих сайтах в форме обратной связи, поскольку, капча заметно снижает конверсию таких сайтов. Для больших сайтов, которые могут специально спамить, такие методы не применимы. Однако, в большинстве случаев, без капчи можно обойтись



Основные причины обилия капч — это то, что разработчики не думая берут пример с популярных сервисов при разработке маленьких сайтов и не понимают почему спамят формы.

Почему спамят?


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

Телефон содержит больше 3 цифр


Если в форме есть поле телефон и оно обязательное, то простая проверка: «число цифр в телефоне больше 4» сократит спам на несколько порядков. Даже если имя поля phone. Необходимости у дорвейщиков спамить формы обратной связи нет, поэтому, их спамилки редко различают это поле, а просто его заполняют всякой чепухой. Сама по себе эта проверка сократит число спама до 2-3 сообщений в месяц. Изменение имени поля еще больше сократит спам, однако, оно отключит функцию автодополнения у браузера.

В большинстве случаев для формы обратной связи достаточно этого метода.

Невидимое поле


Если мы добавим обычное поле ввода и скроем его через CSS, то пользователи его не будут заполнять (поскольку его не видят), а вот спамилка обязательно заполнит это поле.

Проверка кукиес


Многие спамерские роботы не поддерживают кукиес и можно просто сохранять при загрузке какой-то кук и проверить наличие куков, после отправки формы. Однако, у части пользователей могут быть отключены куки. При их отсутствии нужно запрашивать пароль отдельно после отправки формы.
С другой стороны, часть спамилок поддерживают куки. Но не обязательно передавать куки на странице с формой, можно загрузить невидимый для пользователя IFrame и в нем передать куку. Еще меньше спамилок загружают фреймы. Такой метод реализован на wordstat.yandex.ru — если вы отключите куки он будет у вас спрашивать капчу.
Можно попробовать загружать куки через картинку, даже если спамерка использует браузер как движок, то картинки она в большинстве случаев не загружает. Однако, меня смущает то, что Яндекс это дело организовал через IFrame. Правда, дело может быть в том, что когда писался Wordstat многие пользователи из-за медленного канала отключали картинки.

Проверка JS


Большинство спамилок не исполняют JS, особенно из внешних файлов. Можно сделать невидимое поле и в него добавлять какой-то код через JS из внешнего файла. Если у пользователя JS отключен — ему придется вводить капчу.
Tags:
Hubs:
+115
Comments 187
Comments Comments 187

Articles