2025-09-08 16:56:54 +03:00
2025-09-04 18:56:36 +03:00
2025-09-01 18:57:39 +03:00
2025-09-01 18:57:39 +03:00
2025-09-04 18:56:36 +03:00

Python Parser CF - Система анализа данных

Проект состоит из трех основных компонентов:

  • python_parser - FastAPI приложение для парсинга и обработки данных
  • streamlit_app - Streamlit приложение для визуализации и анализа
  • minio_data - хранилище данных MinIO

🚀 Быстрый запуск

Предварительные требования

  • Docker и Docker Compose
  • Git

Запуск всех сервисов (продакшн)

docker compose up -d

Запуск в режиме разработки

# Автоматический запуск
python start_dev.py

# Или вручную
docker compose -f docker-compose.dev.yml up -d

Режим разработки позволяет:

  • Автоматически перезагружать Streamlit при изменении кода
  • Монтировать исходный код напрямую в контейнер
  • Видеть изменения без пересборки контейнеров

Доступ к сервисам

Остановка сервисов

docker-compose down

📁 Структура проекта

python_parser_cf/
├── python_parser/          # FastAPI приложение
│   ├── app/               # Основной код приложения
│   ├── adapters/          # Адаптеры для парсеров
│   ├── core/              # Основная бизнес-логика
│   ├── data/              # Тестовые данные
│   └── Dockerfile         # Docker образ для FastAPI
├── streamlit_app/          # Streamlit приложение
│   ├── streamlit_app.py   # Основной файл приложения
│   ├── requirements.txt    # Зависимости Python
│   ├── .streamlit/        # Конфигурация Streamlit
│   └── Dockerfile         # Docker образ для Streamlit
├── minio_data/            # Данные для MinIO
├── docker-compose.yml     # Конфигурация всех сервисов
└── README.md              # Документация

🔧 Конфигурация

Переменные окружения

Все сервисы используют следующие переменные окружения:

  • MINIO_ENDPOINT - адрес MinIO сервера
  • MINIO_ACCESS_KEY - ключ доступа к MinIO
  • MINIO_SECRET_KEY - секретный ключ MinIO
  • MINIO_SECURE - использование SSL/TLS
  • MINIO_BUCKET - имя bucket'а для данных

Порты

  • 8000 - FastAPI
  • 8501 - Streamlit
  • 9000 - MinIO API
  • 9001 - MinIO Console

📊 Использование

  1. Запустите все сервисы: docker-compose up -d
  2. Откройте Streamlit: http://localhost:8501
  3. Выберите тип данных для анализа
  4. Просматривайте результаты в интерактивном интерфейсе

🛠️ Разработка

Режим разработки (рекомендуется)

# Запуск режима разработки
python start_dev.py

# Остановка
docker compose -f docker-compose.dev.yml down

# Возврат к продакшн режиму
python start_prod.py

Локальная разработка FastAPI

cd python_parser
pip install -r requirements.txt
uvicorn app.main:app --reload

Локальная разработка Streamlit

cd streamlit_app
pip install -r requirements.txt
streamlit run streamlit_app.py

📝 Лицензия

Проект разработан для внутреннего использования.

Description
No description provided
Readme 79 MiB
Languages
Python 99.7%
Dockerfile 0.3%