Хороший алгоритм, чтобы проверить, является ли частота постов спамом - PullRequest
1 голос
/ 20 октября 2011

У меня есть сайт, где люди могут публиковать текст.Каждый пост хранится в базе данных с ip постера и временем поста.Я хочу, чтобы у меня была возможность отображать рекапчу, если я могу определить, что на постере изображен бот, спамер и т. Д.

Какой хороший алгоритм для этого?Самый простой выбор - проанализировать, больше ли количество сообщений в заранее определенный период времени, скажем, одна минута, чем выбранный предел, скажем, 10. Тем не менее, у этого есть недостаток падения на несколько человек, отправляющих сообщения из-за того же IPили даже бот, который создает случайные частотные интервалы> период времени, или сообщения меньше, чем предел в этот период времени.

Очевидно, что «правильного» ответа нет.Однако некоторые алгоритмы лучше других, и я просто пытаюсь найти лучший.

1 Ответ

1 голос
/ 20 октября 2011

Вы можете использовать лимитный подход и эффективно использовать веб-аналитику .

Должны быть ограничения до сколько раз IP будет публиковать вещи в одном контексте .Например, для вопроса (контекста) StackExchange мой IP-адрес (в большинстве случаев) публикует один ответ (не комментарии).Любой больше чем один ответ необычен, и следовательно, подозрительн.В некоторых других контекстах частота может быть несколько раз, например, комментарии StackExchange.

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...