Проверка уникальности текста

12
B
На сайте с 18.03.2011
Offline
8
828

Добрый вечер.

Меня интересует сам алгоритм этого процесса. Изложу свою версию:

Исходный текст канонизируем, разбиваем на шинглы. Далее берем первый шингл исходного текста, отправляем get-запрос например яндексу на получение скажем 20 первых результатов. Далее, пробегая по ответам парсим текст с этих двадцати сайтов и сравниваем каждый с исходным(методом шинглов само собой). Берем следующий шингл и то же самое. Получается как то громоздко и ресурсоемко. Что посоветуете?(только пожалуйста без ответов вроде "не изобретать велосипед")

p.s. заранее извиняюсь если не в ту ветку запостил.

babnicks
На сайте с 23.10.2009
Offline
47
#1
Boneshock:

Исходный текст канонизируем, разбиваем на шинглы. Далее берем первый шингл исходного текста, отправляем get-запрос например яндексу на получение скажем 20 первых результатов. Далее, пробегая по ответам парсим текст с этих двадцати сайтов и сравниваем каждый с исходным(методом шинглов само собой).

Можно страницы с сайтов не грузить, достаточно пользоваться сниппетами. Для поиска лучше из текста вытаскивать 3 предложения, одно с начала, другое с середины и одно с конца текста. Дальше с кавычками отправлять в гугл... Несколько лет назад делал такое, работало как часики.

100% защита от спам-ботов (https://www.keycaptcha.com)
eStatic
На сайте с 27.05.2011
Offline
40
#2

Не так давно делал подобное. Делал именно так, как ТС предложил. Простенький алгоритм шинглера реализовать не сложно (более сложный не каждому нужен). Больше заморочек будет с обходом ограничений поисковый систем (каптчи, куки и прочее). Придется привязывать *********у, может быть использовать прокси, при необходимости привязывать свои куки к каждому прокси и юзер-агенту и т.д.. Все зависит от масштабов проекта.

[Удален]
#3
babnicks:
Можно страницы с сайтов не грузить, достаточно пользоваться сниппетами.

Это как-то совсем кисло. Погрешность-то все равно большая.

Если будут большие объемы текста, то многое упустить легко.

B
На сайте с 18.03.2011
Offline
8
#4

eStatic, да, насчет бана поисковиков надо будет думать. Но все таки сама суть верна? я про то, что берем шингл исходного текста, отправляем в поисковик, получаем выдачу, пробегаемся по ссылкам на сайты где этот шингл встречается и сравниваем исходный текст с контентом с этих ссылок.

Дальше конечно нужно оптимизировать, хеш таблицы например делать, но это дело уже второе.

babnicks, сниппетами? всмысле сравнивать с тем что выдает поисковик по запрошенному шинглу? думаете эффективность будет высока?

babnicks
На сайте с 23.10.2009
Offline
47
#5
Boneshock:

babnicks, сниппетами? всмысле сравнивать с тем что выдает поисковик по запрошенному шинглу? думаете эффективность будет высока?

Попробуйте руками и проверьте, только не забудьте про кавычки :) имхо эффективность достаточная практически для любых задач. Идти по сайтам имхо это ЖЕСТЬ.

B
На сайте с 18.03.2011
Offline
8
#6
babnicks:
Попробуйте руками и проверьте, только не забудьте про кавычки :) имхо эффективность достаточная практически для любых задач. Идти по сайтам имхо это ЖЕСТЬ.

Да, верно, надо попробовать сначала. А про то что брать текст с сайтов из выдачи - ну так ведь встретилась какая-нибудь фраза в каком нибудь сайте ну и что? а вдруг остальной текст совсем про другое? это если брать фразами(шинглами т.е.). Опять же если брать как вы предлагаете предложения, то это если явный копипаст, а если слова просто местами поменяли?

Вообщем, надо думать...

B
На сайте с 18.03.2011
Offline
8
#7
eStatic:
Больше заморочек будет с обходом ограничений поисковый систем (каптчи, куки и прочее)

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

LEOnidUKG
На сайте с 25.11.2006
Offline
1773
#8
хм, что-то у меня любой программный запрос к яндексу показывает страничку с капчей...есть какаято особенность, не подскажите(в headers вроде все стандартное добавляю)?

Скорее всего вы без куков обращаетесь, а надо с куками.

Тут такие варианты:

1. Сервис распознавания каптч

2. Прокси сервера

3. Совмещать эти два варианта

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
B
На сайте с 18.03.2011
Offline
8
#9
LEOnidUKG:
Скорее всего вы без куков обращаетесь, а надо с куками.
Тут такие варианты:
1. Сервис распознавания каптч
2. Прокси сервера
3. Совмещать эти два варианта

мм, спасибо, попробую. НУ пока до капчи далеко, нужно хотя бы научиться имитировать работу через браузер, а то яндекс палит во мне робота:) думаете дело в куках? ок

babnicks
На сайте с 23.10.2009
Offline
47
#10
Boneshock:
Да, верно, надо попробовать сначала. А про то что брать текст с сайтов из выдачи - ну так ведь встретилась какая-нибудь фраза в каком нибудь сайте ну и что? а вдруг остальной текст совсем про другое? это если брать фразами(шинглами т.е.). Опять же если брать как вы предлагаете предложения, то это если явный копипаст, а если слова просто местами поменяли?
Вообщем, надо думать...

Именно поэтому я предлагаю брать не одно, а 3 предложения из разных мест и считать текст ТОЧНО уникальным если все 3 не нашлись... Если 2 из 3, то почти уникальным :)

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий