Налево махнёт — станет улица, направо махнёт — переулочек
Что ж, пару дней назад мы-таки настроили механизм для борьбы со спамом в виде «капчи», а теперь пришла очередь с этими самыми спамерами разбираться.
В смысле, с теми из них, кто уже проник на сайт и поселился в базе, пусть активности они и не проявляют. Весь день восьмого декабря мне пришлось искать наиболее элегантное решение задачи, как легко найти всех имеющихся в базе спамеров и удалить их.
Основной проблемой представлялось то, что отфильтровать список пользователей по какому-либо «признаку спамера» (эдакая отметина на лбу, хех) не представлялось возможным без использования дополнительного кодирования, а хотелось всё же провернуть этот вопрос побыстрее. В конце концов решение было найдено, когда в руках у вашего покорного слуги оказался инструмент для массового выполнения каких-либо действий внутри сайта.
В нашем случае необходимым действием было «удалить пользователя». Оставалось только привязать сей инструмент к более-менее подходящей выборке пользователей из базы и начать рубить головы. Собственно, именно этим этим делом я был занят примерно в течение четырёх часов.
Пришлось прочесать списки всех зарегистрированных пользователей на предмет того, когда они регистрировались, а когда заходили в последний раз. Если эти даты совпадали, в восьмидесяти процентах случаев такие пользователи оказывались спамерами (это было видно по «вторичным спамерским признакам» в виде ников, городов и стран, которые они представляли).
Впрочем, эта техника позволила определить далеко не всех спамеров, поэтому пришлось внимательно просматривать списки с тем, чтобы найти оставшихся нехороших личностей. Порой их можно было даже не искать — на некоторых страницах из 75 учётных записей не было ни одной (!), которая принадлежала бы человеку. И таких страниц было немало.
По мере того, как продолжались поиски, и от «идеологически верных» записей отсекалась всякая шелупонь, я с некоторым смущением поглядывал на количество остававшихся записей — оно стремительно сокращалось, и я подозревал, что мой прогноз «три спамера на одного человека» грозит оправдаться полностью.
Так оно и вышло. Более того, прогноз оказался слишком скромным. Когда я вычистил всё, что только можно, и взглянул на результат, я был удивлён. Нет, я понимаю, что это вполне нормальная ситуация, учитывая, что защиты от спамеров раньше не было, но всё же. В общем, при трёх с половиной тысячах зарегистрированных пользователей, живыми людьми из них оказались только... 500 — это значит, что только каждый седьмой зарегистрированный пользователь не был спам-ботом!
Но что ещё интересно, пользователей сейчас ровно пятьсот! Нет, я к этому не стремился, так получилось само. В общем, у нас сейчас юбилей, который, как мы думали, давно прошёл
- Блог → john_houlding
- Войдите на сайт для отправки комментариев
Читай! Общайся!
Комментируй! Создавай!
Присоединяйся к LiverBird.ru!
Ваня, ты монстр, получается, что тех, кого я вечером отстреливал из табельного оружия, ты ночью накрыл тактической ядерной боеголовкой!
Ничего страшного, пятьсот так пятьсот. Это тоже довольно внушительное число. Дальше - больш
В общем, да. Но я бы предпочёл, чтобы это количество набиралось постепенно и так, чтобы мы видели. А то получается, что мы видели одно число юзеров, а верным оказалось совсем другое. Да и было был лучше, если бы порядковые номера (user id) соответствовали действительности. Но это всё ерунда. Зато мы теперь можем быть уверены в том, сколько реальных людей регистрировалось на сайте. Пусть эта статистика не такая красивая, как была, зато правдивая.
Ваня, ты монстр, получается, что тех, кого я вечером отстреливал из табельного оружия, ты ночью накрыл тактической ядерной боеголовкой!
В таком случае, если судить по избирательности, это был ядерный тест Тьюринга
А у меня аткой вопрос: допустим, боты зарегестрировались под номерами 1000, 1341, и т.п. Ты их удалил, и их ячейка свободна. Вновь созданные юзвери смогут получить освободившийся нмоер, или им будет присваиваться номер следующий после последнего зарегестрировавшегося?
А у меня аткой вопрос: допустим, боты зарегестрировались под номерами 1000, 1341, и т.п. Ты их удалил, и их ячейка свободна. Вновь созданные юзвери смогут получить освободившийся нмоер, или им будет присваиваться номер следующий после последнего зарегестрировавшегося?
Им будет присваиваться следующий после последнего зарегистрированного. Предположим, что последний на данный момент 3480 (по-моему, так и есть), значит следующий uid будет точно носить 3481 номер.
Ваня, а каков шанс, что ты где-то ошибся и удалил реального пользователя?
Ваня, а каков шанс, что ты где-то ошибся и удалил реального пользователя?
Я оцениваю такой шанс в 1 процент. Причём это только те пользователи, которые не ответили на письмо с приглашением подтвердить регистрацию (так что это даже и не совсем пользователи).
Ничего страшного, пятьсот так пятьсот. Это тоже довольно внушительное число. Дальше - больше