Парсинг сайтов: что законно и как заказать парсер
Разбираю, где проходит граница между нормальным сбором открытых данных и рискованным, на что смотреть с точки зрения 152-ФЗ и прав на базы данных и как правильно поставить задачу на парсер.
Содержание
Парсинг — это автоматический сбор данных с сайтов: цены конкурентов, каталоги поставщиков, курсы валют, объявления, отзывы. Технически это та же загрузка страницы, что и в браузере, только без человека. Поэтому главный вопрос не «можно ли парсить», а «что именно, как и зачем вы собираете».
Важно. Я разработчик, а не юрист, и эта статья — не юридическая консультация. Здесь собраны нормы и практики, о которых стоит знать при постановке задачи. Если проект затрагивает персональные данные или крупные базы чужих сайтов, обсудите его с юристом.
Есть ли закон о парсинге
Отдельного закона о парсинге в России нет. Конституция гарантирует право свободно искать, получать и распространять информацию любым законным способом (ч. 4 ст. 29). Сам по себе автоматический сбор открытой информации не запрещён.
Риски появляются не из-за способа, а из-за того, что собирается и как используется. Основных зон четыре: персональные данные, права на базы данных, авторские права на контент и способ доступа к сайту.
Персональные данные и 152-ФЗ
Самая серьёзная зона. Имена, телефоны, email, фото, ссылки на профили — всё это персональные данные, и на их обработку распространяется закон «О персональных данных» (152-ФЗ). Сбор — тоже обработка.
Ключевая мысль, о которую спотыкаются чаще всего: «данные в открытом доступе» не значит «их можно собирать и использовать как угодно». С 1 марта 2021 года в законе есть статья 10.1 о данных, которые человек разрешил распространять. Для такого разрешения нужно отдельное согласие, а человек вправе установить запреты и условия: например, разрешить показывать телефон на сайте, но запретить его дальнейшую передачу. Сам факт, что телефон виден на странице, не даёт права выгрузить его в свою базу для рассылок.
Если в задаче есть персональные данные, у вас должно быть законное основание для их обработки, понятная цель и сроки хранения. С 2025 года ответственность за нарушения в этой сфере, особенно за утечки, заметно ужесточили.
Практический вывод: парсер для цен, товаров, курсов и характеристик — почти всегда спокойная задача. Парсер, который собирает контакты людей, — задача, которую без юриста лучше не начинать.
Права на базы данных
Гражданский кодекс защищает не только тексты и фото, но и сами базы данных. Изготовитель базы, на создание которой ушли существенные затраты, получает исключительное право извлекать из неё материалы (ст. 1334 ГК РФ). Нарушением считается извлечение существенной части базы — по объёму или по значимости — без разрешения.
Это не теория: суды рассматривают такие споры. Например, в 2023 году Суд по интеллектуальным правам оставил в силе решения по делу № А56-39703/2022. Ответчик извлёк из чужой базы данных материалы в существенном объёме и встроил их в свой сайт. Суд признал это нарушением исключительного права на базу данных.
Что это значит на практике:
- собрать цены на сотню позиций конкурента для мониторинга и выгрузить весь каталог маркетплейса, чтобы показать его у себя, — очень разные истории;
- риск резко растёт, если собранные данные публикуются или продаются как продукт, а не используются для внутренней аналитики;
- регулярное извлечение даже несущественных частей, которое в сумме воспроизводит базу, тоже может быть нарушением.
Авторские права на контент
Тексты описаний, статьи, фотографии товаров — объекты авторского права. Собрать их для анализа — одно. Опубликовать у себя — другое: это использование чужого произведения без разрешения. Типичная ошибка — спарсить каталог поставщика вместе с фото и описаниями и выложить в свой магазин. Если поставщик не давал разрешения, это прямой риск претензии.
Факты — цена, артикул, наличие, размер — авторским правом не охраняются. Поэтому для мониторинга цен обычно собирают именно их.
Способ доступа: robots.txt, нагрузка и защита
robots.txt и пользовательское соглашение
Файл robots.txt — не закон, а инструкция для роботов от владельца сайта. Но это внятный сигнал: если раздел закрыт от роботов, владелец не хочет, чтобы его обходили автоматически. Пользовательское соглашение сайта может прямо запрещать автоматический сбор, и тогда к картине добавляются договорные риски.
Нормальная практика — уважать robots.txt и правила сайта, а если они мешают задаче, искать другой источник или договариваться с владельцем.
Нагрузка
Парсер, который отправляет сотни запросов в секунду, может положить небольшой сайт. Это уже не «сбор данных», а вред чужой инфраструктуре. Аккуратный парсер ходит с паузами, ограничивает число одновременных запросов, кэширует результаты и не запрашивает одно и то же повторно.
Обход защиты
Здесь граница жёсткая. Использование чужих учётных данных, взлом авторизации и обход технических средств защиты — это уже не серая зона: за неправомерный доступ к компьютерной информации предусмотрена уголовная ответственность (ст. 272 УК РФ). Данные «за логином» — личные кабинеты, закрытые разделы — без разрешения владельца не собирают.
API — лучший вариант
Если у сайта есть официальный API, используйте его. Это законный, стабильный и обычно более быстрый способ: данные приходят в структурированном виде, а условия использования прописаны. Например, Банк России публикует курсы валют в машиночитаемом виде, и парсить для этого страницы не нужно.
Чек-лист «спокойного» парсинга
Задача почти наверняка в зелёной зоне, если:
- данные открыты без авторизации;
- это не персональные данные: цены, товары, характеристики, курсы, расписания;
- вы берёте нужные поля, а не копируете всю базу целиком;
- данные нужны для внутренней аналитики, а не для публикации у себя;
- парсер работает с паузами и не создаёт заметной нагрузки;
robots.txtи правила сайта не запрещают такой сбор, либо у вас есть договорённость;- если есть официальный API, вы используете его.
Если по какому-то пункту ответ «нет» — это не обязательно запрет, но это повод остановиться и разобраться подробнее.
Как заказать парсер
Хорошее задание на парсер умещается в одну страницу. Вот что в нём должно быть.
1. Источники
Список сайтов или разделов со ссылками. Если источников много, хватит трёх-пяти примеров и общего описания.
2. Поля
Что именно нужно собрать: название, цена, старая цена, наличие, артикул, ссылка, дата. Лучше всего — пример таблицы, которую вы хотите получить на выходе.
3. Объём и частота
Сколько страниц или позиций и как часто обновлять: один раз, раз в день, каждый час. От этого зависят архитектура и стоимость сервера.
4. Формат результата
Excel, CSV, Google Таблица, загрузка в вашу CRM или базу, уведомление в Telegram или MAX при изменении цены.
5. Что делать при сбоях
Сайты меняют вёрстку, и парсер ломается — это нормально. Нужно заранее решить, кто и как узнаёт о поломке и как быстро её исправляют. Хороший парсер не молча отдаёт пустой файл, а сообщает: «источник изменился, собрано 0 из 1200».
Что влияет на цену парсера
- Количество источников. Каждый сайт — это своя разметка, и под каждый пишется свой разборщик.
- Как сайт отдаёт данные. Обычный HTML разбирается быстро. Если страница собирается JavaScript-ом, нужен браузерный движок, а это медленнее и дороже в работе.
- Защита от роботов. Капчи и блокировки — отдельная работа. А иногда честный ответ: этот источник автоматически не собрать, и лучше договориться с владельцем.
- Регулярность. Разовая выгрузка проще, чем сбор по расписанию с историей изменений и уведомлениями.
- Куда отдавать результат. Файл — проще всего; интеграция с CRM или учётной системой — отдельная задача.
- Поддержка. Если сайты-источники часто меняются, нужен кто-то, кто будет чинить парсер.
Как выглядит аккуратный парсер
Чтобы показать подход, я сделал живое демо парсера. Он работает только с открытыми источниками: учебными сайтами, созданными специально для практики парсинга, и официальными данными Банка России о курсах валют. В демо видно то, о чём шла речь выше:
- прогресс и лог сбора в реальном времени;
- ограничения: не больше двух парсингов одновременно, лимиты на страницы и запуски, паузы между запросами;
- кэш: одинаковый запрос в течение 10 минут отдаётся без повторного обращения к источнику;
- таблица с поиском и сортировкой, графики и выгрузка в Excel или CSV.
Это демо-проект, а не заказ клиента, но устроен он так же, как рабочие парсеры: аккуратно к источнику и удобно для того, кто пользуется результатом.
Если у вас есть задача на сбор данных, напишите мне. Вместе посмотрим на источники, оценим риски и решим, как собрать данные проще и безопаснее — через API, парсер или договорённость с владельцем сайта.
Посмотреть вживую
Мои демо-проекты по теме статьи. Они работают, их можно открыть и потрогать. Это демонстрации, а не работы для клиентов.