проверка сходства / плагиата между статьями в mysql с помощью python

#python #mysql #plagiarism-detection

#python #mysql #обнаружение плагиата

Вопрос:

у меня есть база данных mysql, куда я добавляю новостные статьи, и перед добавлением в нее попробуйте сравнить эту статью со 100 последними статьями, если она имеет какое-либо сходство.

итак, если 95% похоже, я могу пометить его так же, как статью 122, или, если он похож на 70-95%, я могу пометить его как похожий на статью 133,

Какой лучший способ сделать это:

  1. есть ли способ или функция, с помощью которой mysql может это сделать
  2. нужно ли мне использовать python для сравнения этой статьи в цикле while с другими 100 статьями

как я читал на форумах, python — лучший способ, но я попробовал какую-то библиотеку для сравнения string1 (article1) со string2 (article2), и даже если это совершенно другая статья, она говорит мне, что она на 70% одинакова

я думаю, это из-за одних и тех же слов, таких как: и , он, она, будет, новости, текст, или, и, я

Ответ №1:

как я читал на форумах, python — лучший способ, но я попробовал какую-то библиотеку для сравнения string1 (article1) со string2 (article2), и даже если это совершенно другая статья, она говорит мне, что она на 70% одинакова

я думаю, это из-за одних и тех же слов, таких как: и , он, она, будет, новости, текст, или, и, я

Я предложу удалить стоп-слова, может помочь.

 SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_DEFAULT_STOPWORD;
 

СТОП-СЛОВА mysql по умолчанию. Для получения дополнительной информации ознакомьтесь с документацией MYSQL по полнотекстовым стоп-словам и
точной настройкой полнотекстового поиска MySQL
.

Ответ №2:

Если вы используете Linux, вы можете вызвать из python команду diff и поиграть с параметрами, учитель несколько лет назад сделал это, чтобы обнаружить копию на экзамене по программированию, это сработало даже после переформатирования кода