9 хв читання
Як працює парсинг сайтів і чи це законно
Парсинг оточений двома міфами: що це «злом» і що це «просто скопіювати чужий сайт». Насправді ні те, ні інше. Розповідаю простими словами, як він працює, де проходить межа закону і що з цього справді потрібно бізнесу.
Парсер — це програма, яка відкриває сторінку так само, як ваш браузер, і забирає з неї потрібні дані: назву товару, ціну, наявність, контакт із відкритого довідника. Різниця лише в тому, що людина робить це очима й руками, а програма — автоматично й тисячу разів поспіль.
Жодного «злому» тут немає: парсер бачить рівно те саме, що бачить будь-який відвідувач сайту. Якщо сторінку не видно без пароля — її не бачить і парсер. Саме тому питання законності майже ніколи не про технологію. Воно про те, ЯКІ дані ви берете і ЩО з ними потім робите.
Як це працює по кроках
- Програма заходить на сторінку за адресою — так само, як це робить браузер.
- Знаходить у коді сторінки потрібні місця: блок із ціною, заголовок товару, телефон у картці.
- Записує знайдене в таблицю або базу — уже структуровано, охайними колонками.
- Повторює для наступних сторінок: категорій, карток товарів, сторінок пагінації.
- За розкладом проходить усе заново — щодня, щогодини, як домовились — і показує, що саме змінилося з минулого разу.
Чи це законно
Коротка відповідь: сам по собі збір публічних даних не заборонений, але законність залежить від трьох речей — які саме це дані, звідки вони і як ви їх використовуєте. Одна й та сама технологія може бути цілком легальною і цілком незаконною залежно від відповідей на ці питання.
Одразу зазначу: я розробник, а не юрист, і ця стаття — пояснення практики, а не юридична консультація. Якщо проєкт великий або задача потрапляє в сумнівну зону, це питання до юриста — і я перший про це скажу, а не візьму гроші й промовчу.
Три зони: де спокійно, де обережно, а де ні
Публічні дані для власного аналізу
Зелена зонаЦіни, наявність, характеристики товарів, відкриті каталоги — те, що бачить будь-який відвідувач без пароля. Ви збираєте це, щоб приймати рішення всередині компанії: порівняти ціни, спіймати дефіцит, зібрати аналітику ринку. Найпоширеніший і найспокійніший сценарій.
Персональні дані й чужі правила
Жовта зонаІмена, телефони, email — це персональні дані, і на них поширюється окреме законодавство: потрібна законна підстава для обробки, а не просто технічна можливість зібрати. Сюди ж — умови користування сайту-джерела, які можуть прямо забороняти автоматичний збір. Кожен такий випадок розглядається окремо.
Обхід захисту й перепублікація
Червона зонаПідбір паролів, обхід капчі, доступ до закритих розділів, а також копіювання чужого контенту, щоб викласти його в себе як свій. Це вже не парсинг, а порушення — від авторського права до несанкціонованого доступу. Такі задачі я не беру.
Правила, за якими я роблю парсери
- Тільки те, що доступне без авторизації. Ніяких чужих паролів і обходу захисту.
- Обережна швидкість. Парсер працює так, щоб не створювати навантаження на сайт-джерело: запити з паузами, а не лавина звернень.
- robots.txt читається. Це не закон, а прохання власника сайту — і його варто поважати. Якщо розділ прямо закритий, туди не йдемо.
- Дані йдуть вам, а не «у відкритий доступ». Ми збираємо для вашої аналітики, а не щоб зробити копію чужого сайту.
- Якщо задача викликає сумнів — я кажу про це до початку робіт, а не після оплати.
Скільки коштує парсер
Парсер одного джерела
від $400 · 1–2 тижніОдин сайт, потрібні поля, вивантаження в таблицю або Telegram. Підходить, щоб стежити за цінами конкретного конкурента чи зібрати каталог з одного майданчика.
Детальніше про послугуКілька джерел зі звітами
від $650Три-пʼять сайтів, зведених в один формат, плюс регулярний звіт: що змінилося, де ціна впала, що зникло з наявності. Найчастіший запит у роздрібній торгівлі.
Детальніше про послугуПідтримка й оновлення
$100 на місяцьПункт, про який зазвичай не попереджають: сайти-джерела міняють верстку, і будь-який парсер рано чи пізно ламається. Підписка — це те, завдяки чому він продовжує працювати, а не тихо вмирає через місяць.
Що спитати себе перед стартом
Три питання знімають більшість сумнівів. Перше: чи видно ці дані звичайному відвідувачу без пароля? Друге: чи є серед них персональні — імена, телефони, email? Третє: що ви робитимете з результатом — аналізуватимете у себе чи публікуватимете назовні?
Якщо відповіді «так, ні, аналізуватиму» — це та сама зелена зона, і задача цілком звичайна. Якщо «так» на друге або «публікуватиму» на третє — це не означає «не можна», це означає «треба розібратися окремо». Опишіть задачу, і я скажу чесно, що з нею робити.
Часті запитання про парсинг
Технічно власник сайту бачить звернення так само, як бачить будь-якого відвідувача. Саме тому парсер має працювати спокійно: помірна швидкість, паузи, розумний обсяг. Агресивний збір створює навантаження, і на нього справедливо реагують блокуванням — це ще одна причина не гнатися за швидкістю.
Це питання не «якщо», а «коли»: верстку міняють усі. У межах підтримки я лагоджу такі поломки — власне тому вона й винесена окремим рядком. Без підтримки парсер теж працюватиме, але одного дня тихо перестане, і помітять це не одразу.
Технічно так, юридично — це персональні дані, і сам факт, що вони десь опубліковані, не дає автоматичного права на розсилку. Тому за такі задачі я беруся тільки коли зрозуміла законна підстава, і чесно кажу, коли її не бачу.
Публічні сторінки товарів технічно доступні, але великі майданчики зазвичай прямо забороняють автоматичний збір у своїх умовах і серйозно захищаються технічно. Часто розумніше піти офіційним шляхом — у багатьох є API для партнерів. Це і надійніше, і дешевше в підтримці.
Потрібні дані, яких немає в зручному вигляді?
Опишіть, з яких сайтів і що саме треба збирати, — скажу, чи реально це технічно, чи спокійно з погляду правил і скільки коштуватиме.