Как защитить веб-сайт на 1С-Битрикс от парсинга

Парсинг сайтов - это процесс автоматического извлечения информации из веб-страниц или веб-ресурсов. Он выполняется с помощью специальных программных инструментов, называемых «парсерами».

Для чего используется парсинг сайтов?

Парсингом занимается огромное количество компаний. Цели очень разнообразные, но мы поговорим только о нескольких, которые беспокоят владельцев интернет-магазинов (т.к. это наше основное направление деятельности).

  1. Парсинг товаров и статей
    Добавить несколько тысяч товаров с хорошим оформлением в свой интернет-магазин довольно сложно и дорого. Гораздо проще спарсить контент конкурента и загрузить его себе на сайт. Таким образом, за 1 рабочий день можно загрузить 50000-100000 карточек товаров с сайта конкурента. Естественно, когда вы годами сами наполняете вручную свой интернет-магазин качественно оформленным контентом (товарами и статьями), то меньше всего хотите, чтобы ваш конкурент все скопировал себе.
  2. Сбор цен конкурентов
    Многие крупные игроки на рынке занимаются этим. Согласитесь, удобно знать какие цены у конкурентов и быстро принимать решения по своему ценообразованию. Можно автоматически держать цены чуть ниже, чем у основных конкурентов (демпинговать).
  3. Сбор данных SEO-сервисами
    Роботы различных сервисов для продвижения постоянно собирают информацию о ваших сайтах. На основе таких данных конкуренты могут определить какие им необходимы вложения, чтобы подняться выше вас в поиске, перехватить ваш поисковый трафик.
  4. Поиск уязвимостей вебсайта
    Постоянно различные роботы проверяют сайты в Интернет на наличие известных уязвимостей. Даже у 1С-Битрикс за 2022 год было найдено 2 уязвимости, позволяющие взломать интернет-магазин. А если у вас используется бесплатная CMS с кучей сторонних плагинов и модулей - то там вообще беда.

Как защитить веб-сайт от парсинга?

Сразу хочется отметить, не существует 100% защиты от парсинга. К сожалению, мы должны правильно отобразить страницы сайта посетителям (а роботы парсеров могут очень не плохо эмулировать действия человека). И не стоит забывать, что не все парсеры плохие. Есть, например, поисковые роботы, которые для нас друзья. И этих роботов нельзя блокировать.

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

Напоминаем, мы говорим по большей части о защите интернет-магазинов от парсинга. И самое неприятно из вышеперечисленного - это парсинг ваших товаров конкурентами.

Чтобы защитить от парсинга интернет-магазин на Битрикс необходимо:

  1. Ватермарки на фотографии
    Если вы не производитель или поставщик, то обязательно нанесите ватермарки на изображения товаров. Даже простой надписи с адресом вашего сайта поверх изображения - достаточно. Чаще всего парсят товары для того, чтобы изначально наполнить свой интернет-магазин. Если сразу не взять (фотки, характеристики и описания) из одного места, то проще найти другого донора. Скорее всего ваш интернет-магазин обойдут стороною.

    Чтобы на Битрикс добавить ватермарки к фото, есть два основных варианта:

    - В настройках инфоблока товаров указать накладывать автоматические ватермарки. Тогда все загружаемые фотки будут с ватермарками.
    Настройка ватермарок
    - При выводе изображений на сайте, автоматически накладывать ватермарку (нам нравится такой способ больше, т.к. на сайте остаются чистые изображения, которые можно выгружать на маркетплейсы). Это делается не сложно программистом. Делается с помощью метода ResizeImageGet.
    Например:
    $arWaterMark = Array(
    	array(
    		"name" => "watermark",
    		"position" => "bottomright", // Положение
    		"type" => "image",
    		"size" => "real",
    		"file" => $_SERVER["DOCUMENT_ROOT"].'/upload/copy.png', // Путь к картинке
    		"fill" => "exact",
    	)
    );
    $arFileTmp = CFile::ResizeImageGet(
    	$arElement["DETAIL_PICTURE"],
    	array("width" => 250, "height" => 127),
    	BX_RESIZE_IMAGE_EXACT,
    	true,
    	$arWaterMark
    );
  2. Контроль трафика
    Иными словами, блокировать пользователей, которые слишком часто обращаются к вашему интернет-магазину.
    Для этого под Битрикс есть хороший модуль «Защита от парсинга».
    Тут всё очень просто. Например:
    У вас интернет магазин на 10000 товаров. Чтобы его спарсить, роботу необходимо посетить каждый товар. Т.е. открыть каждую страницу каталога товаров. Допустим, у вас не плохой хостинг и в среднем робот будет открывать 2 страницы в секунду. Таким образом он будет сайт парсить 5000 секунд (1 час 23 мин). Вы должны максимально быстро определить, что вас парсят и блокировать IP-адрес робота. Например, если он обратился к вам 6 раз за 10 секунд - блокируем (нужные параметры необходимо подбирать, чтобы не блокировать реальных посетителей). Таким образом, парсеру придется либо умерить свой пыл и поставить задержку, например парсить по странице раз в 2 секунды, и тогда уже парсинг идет 5-6 часов, либо арендовать прокси-сервера, чтобы спарсить быстрее. Фактически и то и то приводит к удорожанию парсинга. И чем больше страниц в каталоге - тем дороже будет его парсить.

Таким образом, ватермарки + модуль защиты от парсинга - почти наверняка вместо вас будут парсить кого-то другого.

Мы всё рассказываем из своего опыта, т.к. можем вам предоставить хоть услуги парсинга, хоть защиты от него. Обращайтесь ;)