Mykola
Роботодавець

Mykola

> 10 проєктів
Параметри проєкту
Варіант співпраціОдноразовий проєкт
Передоплатабез передоплат
Способи оплатиГотівка, Банківський переказ
Прийом заявоквід до 02.09.2026
Опис проєкту
Нам потрібна виробнича система веб-скрейпингу, яка за розкладом раз на добу збирає структуровані дані з 5-8 сайтів і складає їх у придатний для аналітики вигляд. Це не скрипт на один запуск, а сервіс, що працює без нагляду щодня, переживає зміни верстки на джерелах, ввічливо знижує навантаження на вимогу сайту й не падає повністю, коли ламається один із цільових ресурсів. Частина джерел — звичайний статичний HTML, частина — важкі SPA на JavaScript, тож краулер має впевнено працювати і з тими, і з іншими.

Не менш важливо те, що відбувається після завантаження сторінки. Сирий HTML треба перетворювати на перевірені та очищені від дублів записи, а ціни, дати й телефони — приводити до єдиних форматів ще до потрапляння в базу. Зберігати варто лише нове або змінене, тому потрібна інкрементальна логіка. Понад це нам важлива операційна прозорість: дашборд з успішністю запусків та обсягами, сповіщення при збоях і аномаліях у даних, а також відтворюваний деплой, який можна підняти з нуля без усних переказів.

Конкретні цільові сайти конфіденційні й передаються за NDA після узгодження умов. У відгуку напишіть, з якими антибот-захистами ви вже мали справу і як утримували парсер стабільним у часі. Повний обсяг робіт нижче.

1. Архітектура скрейпера
— Scrapy + ротація проксі та пулу User-Agent
— Playwright/Selenium для JS-сайтів
— Обхід CAPTCHA (2captcha/anti-captcha API)
— Rate limiting, дотримання robots.txt

2. Пайплайн даних
— Вилучення сирого HTML у структурований JSON
— Валідація і дедуплікація даних
— Нормалізація: ціни, дати, телефони
— Зберігання в PostgreSQL зі схемою БД
— Інкрементальні оновлення (тільки нові/змінені записи)

3. Моніторинг і експлуатація
— Дашборд здоров'я: успішність запусків, кількість записів, помилки
— Сповіщення в Slack/email при збоях або аномаліях
— Деплой через Docker Compose
— Cron-розклад із логікою повторів

Цільові сайти
— Конфіденційно (NDA) — деталі після підписання угоди
— Суміш статичних HTML і динамічних SPA-сайтів

Результат
— Повний вихідний код з тестами
— Docker Compose конфігурація для production
— Міграції схеми БД
— Runbook і налаштування моніторингу
Автор проєкту: Mykola