NC
Все примеры
Обложка статьи «Парсер и сбор данных: от источника до ленты на сайте» — пример автоматизации с ИИ, категория «Парсинг и данные», NeiroCursor
Парсинг и данные

Парсер и сбор данных: от источника до ленты на сайте

Обновлено: Mon Jul 06 2026 00:00:00 GMT+0000 (Coordinated Universal Time)

Автоматический сбор новостей или данных, обработка через LLM и публикация в PostgreSQL с выводом на Next.js.

Сценарий

Схема
Пайплайн парсера: источник → LLM → PostgreSQL → сайт
RSS надёжнее HTML-scraping.

Регулярно собирать статьи/RSS/HTML, нормализовать текст, при необходимости суммаризировать через LLM и показывать на сайте — как лента новостей NeiroCursor.

Инструкция
Пошаговая инструкция по теме статьи
Пошаговый план действий — следуйте пунктам по порядку.

Шаг 1. Источники данных

Сравнение
RSS vs HTML-парсинг
RSS структурирован; HTML хрупок.
  • RSS/Atom — предпочтительно (структура, меньше хрупкости).

  • HTML — только с respect к robots.txt и rate limit.

  • Официальные API — лучший вариант, если доступны.

Зафиксируйте список URL и частоту опроса (cron каждые N часов).

Шаг 2. Сборщик (Python)


Напиши asyncio-скрипт: fetch RSS, парсинг entry, dedup по URL hash.

Сохранение в PostgreSQL через SQLAlchemy async.

Поля модели: title, summary, content, source_url, published_at, slug.

Шаг 3. Обработка LLM (опционально)

  • Краткий summary для карточки — один запрос на статью.

  • Кэш по hash контента — не дергать API повторно.

  • Очередь задач (Celery, ARQ или cron + batch).

Шаг 4. API и фронт

  • FastAPI: GET /api/news, GET /api/news/{slug}.

  • Next.js: Server Components + revalidate или dynamic.

  • Admin API для ручной модерации (как на NeiroCursor).

Шаг 5. Эксплуатация

Советы
Эксплуатация парсера в продакшене
Cron, robots.txt, dedup, алерты.

| Задача | Инструмент |

|--------|------------|

| Расписание | cron или systemd timer |

| Логи | без PII, ротация |

| Ошибки | алерт при N fail подряд |

Связанные материалы

Ключевые выводы

Надёжнее парсить RSS/API, чем хрупкий HTML. Dedup по URL, LLM для summary, PostgreSQL + публичный API для фронта.

FAQ

Законно ли парсить сайты?

Соблюдайте robots.txt, условия использования и не перегружайте источники частыми запросами.

Зачем LLM в пайплайне?

Для нормализации текста, summary и тегов — не для копирования чужих статей целиком без прав.

Как часто запускать сбор?

Зависит от источника: от 15 минут для RSS до раз в сутки для тяжёлых страниц.