Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как обнаружить не точные дубли в базе
 
 автор: integer   (12.07.2007 в 13:12)   письмо автору
 
 

У меня есть доска объявлений, и спамеры засыпают сообщениями, стоит уникальная капча но вносят в ручную объявление несколько раз, может кто-то подскажет алгоритм выявления таких дублей. Читал о методе шинглы , но примеры реализации так и не нашел.

Благодарю за внимание!!!

   
 
 автор: cheops   (12.07.2007 в 14:28)   письмо автору
 
   для: integer   (12.07.2007 в 13:12)
 

Спамеры постят URL - проще вероятно забанить их по фрагментам этих URL.

   
 
 автор: integer   (12.07.2007 в 16:00)   письмо автору
 
   для: cheops   (12.07.2007 в 14:28)
 

Вопрос вообще не в URL а у похожости текста !!


Например можно делать хеш тексту но изменив одну букву значения хешу изменится

   
 
 автор: sms-send   (12.07.2007 в 16:20)   письмо автору
 
   для: integer   (12.07.2007 в 16:00)
 

<?php
$str1
='строка1';
$str2='строка2';
$max=50// максимально допустимая схожесть строк
similar_text($str1,$str2,$s);
if(
$s>$max)echo 'Строки совпадают более чем на '.$max.'% (на '.$s.'%).';
else echo 
'Строки не совпадают (схожесть - '.$s.'%).';
?>


1. Этой функции нет в mysql.
2. От более длинной строки (порядка 2000 символов) сервер вешается.

   
 
 автор: integer   (12.07.2007 в 17:25)   письмо автору
 
   для: sms-send   (12.07.2007 в 16:20)
 

....

   
 
 автор: integer   (12.07.2007 в 17:27)   письмо автору
 
   для: sms-send   (12.07.2007 в 16:20)
 

немножко не то !

объясню алгоритм который в настоящий момент пришол в голову
1.Есть текст объявления и считаем количество слов и длину слов и записуем например слова из 5 букв - 10 шт, из 6 символов - 5 шт и так дальнейшее .
2. Данные анализу записуем в базе вместе с текстом объявления
3. Когда добавляется новое объявление делаем вычисления и смотрим есть такое значение базе или нет , + можно ввести поправочный коэффициент .

ну что-то вот такого типу

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования