Marketplace Parsing Service – это Java-приложение для автоматического мониторинга цен товаров на маркетплейсах (Yandex Market). Оно использует Selenium для работы с динамическими веб-страницами и Spring Boot для упрощения работы с базой данных и написания бизнес-логики.
- Периодический сбор данных:
- Каждые 10 минут приложение открывает ссылки из базы данных.
- С помощью Selenium прогружает страницы и извлекает информацию о ценах и названиях товаров.
- Сохранение данных:
- Текущая цена товара сохраняется как новая запись (Measurement) в базе данных.
- Информация о продукте обновляется, если есть изменения.
- Поддержка пользователей:
- Каждая отслеживаемая ссылка привязана к пользователю.
- TrackedUrl:
- Ссылка для отслеживания.
- Привязана к пользователю (User).
- Имеет список измерений (Measurement) и текущую информацию о продукте (Product).
- Product:
- Название товара.
- Актуальная цена.
- Привязана к TrackedUrl.
- Measurement:
- История цен.
- Содержит дату и цену на момент измерения.
- SeleniumService:
- Управляет периодическим запуском Selenium для сбора данных.
- Преобразует данные из HTML в объекты моделей.
- TrackedUrlRepository:
- Используется для работы с отслеживаемыми ссылками.
- ProductRepository и MeasurementRepository:
- Хранят информацию о продуктах и ценах.
- Java 17 или новее.
- Maven для управления зависимостями.
- Установленный Google Chrome.
- Скачать и настроить ChromeDriver для Selenium.
git clone https://github.com/PulserCoder/Marketplace_Parsing_Service.git
cd market-parsing-service
mvn installПеред запуском приложения необходимо заполнить файл application.properties, указав конфигурацию для подключения к базе данных.
Откройте файл src/main/resources/application.properties и укажите следующие параметры:
# Название приложения
spring.application.name=market.parsing
# Порт для запуска приложения
server.port=8080
# Конфигурация базы данных
spring.datasource.username=<ваш-логин>
spring.datasource.password=<ваш-пароль>
spring.datasource.url=jdbc:postgresql://<адрес-базы-данных>:<порт>/<имя-базы>
spring.datasource.driver-class-name=org.postgresql.DriverДля использования приложения выполните следующие шаги:
-
Запустите программу
Убедитесь, что все настройки указаны правильно, затем запустите приложение.
После успешного запуска перейдите на страницу Swagger UI по адресу:
http://localhost:8080/swagger-ui/index.html#/ -
Создайте пользователя
Перейдите к эндпоинту/user/create/в Swagger UI. -
Добавьте ссылку для отслеживания Найдите эндпоинт
/url/add/{user_id}в Swagger UI. -
Просмотрите результаты через PGAdmin Подключитесь к вашей базе данных через PGAdmin или другой клиент PostgreSQL. Перейдите к таблице measurements, чтобы посмотреть данные, которые были напарсены. В таблице будут указаны price, timestamp и tracked_url_id, соответствующие каждому измерению.
Только для личного пользования Работа сервиса описана для версии 1.0.0