This commit is contained in:
root
2025-09-14 18:01:22 +05:00
parent 98042e62ae
commit 8d8303991e
22 changed files with 2300 additions and 240 deletions
@@ -0,0 +1,51 @@
### Техническое задание для AI-агента
**Задача:** Расширить систему сбора данных, добавив парсеры для трёх новых RSS-источников.
**Контекст:** Мы увеличиваем охват нашей аналитической платформы, подключая новые ключевые источники новостей из Казахстана и России. Каждый источник должен быть реализован как отдельный, независимый сервис для надежности.
---
## 1\. Общие требования для всех парсеров
Для каждого из трёх источников ниже необходимо создать отдельный Spring Boot сервис, который:
- Получает данные из RSS-ленты по URL.
- Парсит XML, извлекая `title`, `link`, `pubDate`, `description`.
- Нормализует данные: очищает текст от HTML, приводит дату к формату ISODate.
- Генерирует уникальный `sha256` хэш (`url + "::" + title`).
- Сохраняет результат в общую коллекцию MongoDB `market_items` с операцией `upsert` по хэшу.
- Запускается автоматически по расписанию **каждые 30 минут** (`@Scheduled(cron = "0 0/30 * * * ?")`).
---
## 2\. Список новых источников и их конфигурация
### Источник 1: LSM.kz
- **URL:** `https://lsm.kz/rss`
- **Название сервиса:** `lsm-parser-service`
- **`source_name` в MongoDB:** `LSM.kz`
- **`category` в MongoDB:** `Финансы`
### Источник 2: РБК
- **URL:** `https://static.feed.rbc.ru/rbc/logical/footer/news.rss`
- **Название сервиса:** `rbc-parser-service`
- **`source_name` в MongoDB:** `РБК`
- **`category` в MongoDB:** `Бизнес`
### Источник 3: Ведомости (Технологии)
- **URL:** `https://www.vedomosti.ru/rss/rubric/technology/internet`
- **Название сервиса:** `vedomosti-parser-service`
- **`source_name` в MongoDB:** `Ведомости`
- **`category` в MongoDB:** `Технологии`
---
## Критерии выполнения
- Созданы три новых Spring Boot сервиса, каждый для своего источника.
- Данные со всех трёх новых RSS-лент успешно собираются каждые 30 минут и сохраняются в коллекцию `market_items` без дубликатов.
- Структура сохраняемых документов в MongoDB полностью соответствует существующей модели.