Как я со спамерами боролся

Задолбали меня спамеры, с однотипными предложениями продвинуть группу, устроить розыгрыш, и все такое одинаково назойливое.

Как я со спамерами боролся Спамеры, Чат-бот, Лига Добра, ВКонтакте, Длиннопост

Как один из вариантов борьбы  - я написал бота.


Простого, как пять копеек, который мониторит все входящие сообщения.

Разбивает их на предложения, каждое предложение разбивает на слова, и сравнивает с таблицей слов/синонимов/словосочетаний, на каждое из которых у него есть ответ. Если ответ(ы) найдены, то берет самое высокоприоритетное и вуаля - отвечает.

Как я со спамерами боролся Спамеры, Чат-бот, Лига Добра, ВКонтакте, Длиннопост

Но столкнулся с моментом, который и побудил меня написать этот пост.


Спамеры могли писать заменяя часть русских букв их английскими аналогами, например:


Привеm!


Вроде и написано понятно, но это уже не "привет".


Решение пришло быстро, и отсекает ВСЮ подобную хрень:

0. Пишется функция транслитерации (ч->ch,...)

1. Пишется функция замены английских похожих на русские (k->к, e->е...)

2. Пишется функция анализа английское ли слово (содержит только английские буквы, результат транслитерации равен самому слову)


И далее: если "Слово не английское полностью" и "результат замены не равен слову" - то слово спамное.


Понимаю, звучит запутано, но работает.

Как я со спамерами боролся Спамеры, Чат-бот, Лига Добра, ВКонтакте, Длиннопост

И ВСЕ!!!!

Далее остается анализировать только "нормально написанный спам", разобрать который уже легче тем, что в нем могут встречаться спамные слова "продвинем, ведение групп инстаграм;приносила прибыль;" и тому подобное.


В принципе получившимся роботом - готовы поделиться со всеми желающими, если нужно.

Сделали админку, настроить его можно без нашей помощи.


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