Позвоните нам

+7 (495) 215-53-16
+7 (812) 748-20-96

Наш адрес:

Санкт-Петербург, Заозерная ул. 8

График работы

пн-пт: 08.00 - 23.00, сб-вс: отдыхаем :)
17. 01. 2019   ·   Комментарии: 0   ·

Как сделать защиту от парсинга?

Такой вопрос многие задают постоянно, как только сталкиваются с парсингом и чаще всего интересует следующее:

  • Существует ли решение, которое позволяет парсить контент с сайта который создан динамически, так что обязательно нужно выполнение JavaScript? И тут речь не просто про ajax, а про то что ссылка на требуемый контент генерируется сменной JS – функцией? Ведь это может быть хорошей защитой от парсинга!
  • Какие существуют ключевые методики предотвращения автоматического копирования контента? Например:
  1. Динамический контент на сайте
  2. Динамическая смена верстки на сайте
  3. Блокирование по ip если не поисковый робот
  4. Выдавать поисковикам один контент, а клиентам другой.

Итак, давайте разберемся про защиту от парсинга детально!

1. Сайт изначально предназначен для публикации, то есть он открыт.
2. Если вы не хотите чтобы информация была открыта, не публикуйте.

Из 1 пункта выше следует, что нет достаточных средств для защиты от парсеров. Вопрос только в том, на сколько вы готовы и можете усложнить жизнь для парсеров. Все что может прочитать и распознать человек (а ведь именно для людей и делается сайт?) может быть воспроизведено. В части, где парсинг может быть автоматизирован, он будет автоматизирован. Сейчас существуют мощные парсеры Яндекса и Гугла. Если они ваш сайт не смогут разобрать, то и в индексе его не будет, значит полезная информация не дойдет до конечного пользователя! А тот, кто захочет, ее скопирует, если информация очень нужна. Если даже вы представите в виде мозаики из картинок и кусков, даже если зашифруете, но информация на экране должна все равно быть читабельной, а значит простой принтскрин и распознавание в FineReader будет быстрее, чем вы напишите защиту от него… Всякая защита усложняет систему и увеличивает количество ошибок. Пользователь быстрее уйдет с вашего сайта, только потому что из-за ошибки в скрипте полезные данные не получит.

Единственное что может вам помочь, это не раскрывать полностью всю информацию о предмете, или разделить на несколько частей, но при этом не должно быть неудобства для посетителя. К примеру, скройте “количество зубцов в шестеренке”, любую ключевую информацию, без которой “самолет не взлетит”. А если хотите поиграться, то пришла в голову идея: перемешивание по определенному алгоритму текста, который потом восстанавливается, применение стилей для скрытия “фальшивых” слов или фраз. Например, задать стиль, который скрывает каждое второе предложение или слово. Но к сожалению, это ломается быстро

Нужны данные для вашего бизнеса?

Бесплатно регистрируйтесь на нашем портале https://ru.xmldatafeed.com и используйте ежедневные итоги парсинга крупнейших сайтов России (товары и услуги)!

Но можно усложнить парсинг если реализовать следующие способы:

  1. Система мониторинга поведения пользователя (движение мышки, координаты нажатия на кнопки и т.п.) для того чтобы вычислять парсеры.
  2. Не использовать Id и name или другие атрибуты, по которым можно вычислить контент.
  3. Обфусцировать СSS и делать имена классов динамическими.
  4. Динамически добавлять различный мусор в разметку.
  5. Использовать веб- фреймворк, и не светить методы наружу.
  6. Использовать капчу, от разных вендоров и с динамически генерируемым url, причём загружать её так, чтобы её нельзя было вытащить из кэша браузера (от перехвата запроса это не спасёт, но усложнит парсинг).
  7. Периодически менять вёрстку сайта.