Розробка високопродуктивного парсера автомаркетплейсу
Бізнес-завдання: Створити комплексне рішення для моніторингу автомобільного ринку, яке повністю мінімізує ручну працю користувача, миттєво збирає великі масиви даних та надає зручний графічний інтерфейс для швидкої оцінки цін.
Що було реалізовано:
Швидкісний асинхронний рушій: Завдяки комбінації бібліотек HTTPX та Asyncio парсер обробляє понад 50 сторінок оголошень всього за 20 секунд, працюючи у багатопотоковому асинхронному режимі без блокування.
Захист від пошкодження структури: Написано гнучку систему валідації елементів на базі BeautifulSoup4. Якщо в оголошенні відсутній якийсь параметр (наприклад, тип КПП або місто), скрипт автоматично підставляє маркер безпеки. Це виключає зсув стовпчиків у фінальному звіті.
Глибоке очищення даних (ETL): Проведено нормалізацію даних за допомогою Pandas. Скрипт успішно бореться з прихованими нерозривними пробілами сайту (\xa0) та знаками валют, примусово приводячи ціни до чистого числового типу для математичних розрахунків.
Аналітичний веб-додаток: На базі Streamlit розроблено зручну панель керування. Користувач може обрати модель авто через бічне меню, після чого система миттєво перераховує ключові бізнес-метрики: загальний обсяг ринку, середню ціну та виявляє найдешевші пропозиції (метрика «ШАНС»). Дані в таблиці автоматично форматуються та адаптуються під вибір користувача.
Стек технологій: Python, HTTPX, Asyncio, BeautifulSoup4, Pandas, Streamlit.
Що було реалізовано:
Швидкісний асинхронний рушій: Завдяки комбінації бібліотек HTTPX та Asyncio парсер обробляє понад 50 сторінок оголошень всього за 20 секунд, працюючи у багатопотоковому асинхронному режимі без блокування.
Захист від пошкодження структури: Написано гнучку систему валідації елементів на базі BeautifulSoup4. Якщо в оголошенні відсутній якийсь параметр (наприклад, тип КПП або місто), скрипт автоматично підставляє маркер безпеки. Це виключає зсув стовпчиків у фінальному звіті.
Глибоке очищення даних (ETL): Проведено нормалізацію даних за допомогою Pandas. Скрипт успішно бореться з прихованими нерозривними пробілами сайту (\xa0) та знаками валют, примусово приводячи ціни до чистого числового типу для математичних розрахунків.
Аналітичний веб-додаток: На базі Streamlit розроблено зручну панель керування. Користувач може обрати модель авто через бічне меню, після чого система миттєво перераховує ключові бізнес-метрики: загальний обсяг ринку, середню ціну та виявляє найдешевші пропозиції (метрика «ШАНС»). Дані в таблиці автоматично форматуються та адаптуються під вибір користувача.
Стек технологій: Python, HTTPX, Asyncio, BeautifulSoup4, Pandas, Streamlit.