{"id":28496246,"url":"https://github.com/bogdang888g/yandex_cloud_course_work_update","last_synced_at":"2026-04-18T17:04:01.447Z","repository":{"id":297602048,"uuid":"997296541","full_name":"BogdanG888G/Yandex_cloud_course_work_update","owner":"BogdanG888G","description":"Репозиторий с курсовой работой по теме \"Облачные хранения данных\", версия через Yandex Cloud","archived":false,"fork":false,"pushed_at":"2025-06-14T12:31:11.000Z","size":9060,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-14T13:34:04.534Z","etag":null,"topics":["docker","docker-compose","postgresql","python","superset","yandex-cloud"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BogdanG888G.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-06T09:35:08.000Z","updated_at":"2025-06-14T12:31:15.000Z","dependencies_parsed_at":"2025-06-06T11:29:22.679Z","dependency_job_id":null,"html_url":"https://github.com/BogdanG888G/Yandex_cloud_course_work_update","commit_stats":null,"previous_names":["bogdang888g/yandex_cloud_course_work_update"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/BogdanG888G/Yandex_cloud_course_work_update","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BogdanG888G%2FYandex_cloud_course_work_update","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BogdanG888G%2FYandex_cloud_course_work_update/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BogdanG888G%2FYandex_cloud_course_work_update/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BogdanG888G%2FYandex_cloud_course_work_update/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BogdanG888G","download_url":"https://codeload.github.com/BogdanG888G/Yandex_cloud_course_work_update/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BogdanG888G%2FYandex_cloud_course_work_update/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263165657,"owners_count":23423986,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","docker-compose","postgresql","python","superset","yandex-cloud"],"created_at":"2025-06-08T12:06:57.194Z","updated_at":"2026-04-18T17:04:01.439Z","avatar_url":"https://github.com/BogdanG888G.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🛍️ WB Parser Bot + Superset Dashboard + Yandex Cloud\n\n\n## 🔍 О проекте\n\n**Автоматизированная система мониторинга товаров Wildberries с облачным развертыванием** - это комплексное решение для сбора, анализа и визуализации данных с популярного маркетплейса. Проект разработан в рамках курсовой работы по дисциплине \"Облачные технологии в работе с большими данными\"\n\nСистема позволяет:\n- 🤖 Управлять процессом парсинга через Telegram-бота\n- 📈 Автоматически создавать аналитические дашборды\n- ☁️ Развертывать решение в облаке Yandex Cloud\n- 🐳 Работать с полностью контейнеризированной инфраструктурой\n\n## ✨ Ключевые особенности\n\n- **Интеллектуальный парсинг** товаров по категориям, ценам и скидкам\n- **Автоматическая генерация** интерактивных отчетов в Apache Superset\n- **Готовое облачное решение** для быстрого развертывания\n- **Простое управление** через Telegram-интерфейс\n- **Масштабируемая архитектура** на базе Docker\n\n## 🛠️ Технологический стек\n\n### Основные технологии\n\n| Компонент | Технологии |\n|----------|------------|\n| **Парсинг** | ![Python](https://img.shields.io/badge/Python-3.10-blue?logo=python\u0026logoColor=white) |\n| **Бэкенд** | ![FastAPI](https://img.shields.io/badge/FastAPI-0.85-009688?logo=fastapi\u0026logoColor=white) |\n| **База данных** | ![PostgreSQL](https://img.shields.io/badge/PostgreSQL-14-blue?logo=postgresql\u0026logoColor=white) |\n| **Визуализация** | ![Apache Superset](https://img.shields.io/badge/Apache_Superset-2.0-orange?logo=apache-superset\u0026logoColor=white) |\n| **Инфраструктура** | ![Docker](https://img.shields.io/badge/Docker-20.10-2496ED?logo=docker\u0026logoColor=white) ![Docker Compose](https://img.shields.io/badge/Docker_Compose-1.29-2496ED?logo=docker\u0026logoColor=white) |\n| **Облако** | ![Yandex Cloud](https://img.shields.io/badge/Yandex_Cloud-Cloud_Platform-red) |\n\n\n## 📂 Структура проекта\n\n```\n📦 wb-parser-project\n├── 📂 init\n│   └── 📄 01-create-user-db.sql       # SQL-скрипт инициализации БД\n├── 📂 bot\n│   ├── 📄 bot.py                     # Основной код Telegram-бота\n│   ├── 📄 requirements.txt           # Зависимости для бота\n│   └── 📄 run.sh                     # Скрипт запуска бота\n├── 📂 parser\n│   ├── 📄 __init__.py                # Инициализация Python-пакета\n│   ├── 📄 Dockerfile-parser          # Конфигурация Docker для парсера\n│   ├── 📄 parser_api.py              # API-интерфейс парсера\n│   ├── 📄 python_test_case_1.py      # Основная логика парсера WB\n│   └── 📄 requirements.txt           # Зависимости парсера\n├── 📄 Dockerfile-bot                 # Конфигурация Docker для бота\n├── 📄 Dockerfile-superset            # Конфигурация Superset\n├── 📄 docker-compose.yml             # Оркестрация сервисов\n├── 📄 .env                           # Переменные окружения\n├── 📄 superset_config.py             # Конфигурация Superset\n├── 📄 requirements.txt               # Общие зависимости\n└── 📄 README.md                      # Документация проекта\n```\n\n## 🚀 Быстрый старт\n\n### Предварительные требования\n- Docker 20.10+\n- Docker Compose 1.29+\n- Аккаунт в Yandex Cloud (для облачного развертывания)\n\n### Локальное развертывание\n\n1. Клонируйте репозиторий:\n```bash\ngit clone https://github.com/BogdanG888G/Yandex_cloud_course_work_update.git\ncd wb-parser-bot\n```\n\n2. Настройте окружение:\n```bash\ncp .env.example .env\nnano .env  # Отредактируйте параметры\n```\n\n3. Запустите систему:\n```bash\ndocker-compose up --build -d\n```\n\n4. Инициализируйте Superset:\n```bash\ndocker-compose exec superset superset-init\n```\n\n### Развертывание в Yandex Cloud\n\n![alt text](image.png)\n\n1. Создайте ВМ в Yandex Cloud\n2. Установите Docker и Docker Compose\n3. Скопируйте проект на сервер\n4. Запустите как для локального развертывания\n5. Настройте группу безопасности для доступа к портам:\n   - 8088 (Superset)\n   - 8000 (API парсера)\n   - 5432 (PostgreSQL)\n\n## 🤖 Работа с системой\n\n### Через Telegram-бота\n1. Найдите своего бота в Telegram (в моем случае это **@WB_cloud_parcer_bot**)\n2. Отправьте команду `/start`\n3. Следуйте инструкциям:\n   ```\n   1. Отправьте ссылку на категорию WB\n   2. Укажите диапазон цен (мин и макс)\n   3. Задайте минимальную скидку\n   4. Получите ссылку на дашборд\n   * 👤 Логин: admin\n   * 🔒 Пароль: admin\n   ```\n\n\n\n## 📊 Примеры дашборда\n\n![alt text](image-1.png)\n\n## ⚙️ Настройка\n\nОсновные параметры системы можно настроить через файл `.env`:\n\n```ini\n# Настройки базы данных\nPOSTGRES_USER=admin\nPOSTGRES_PASSWORD=secure_password\nPOSTGRES_DB=wb_data\n\n# Настройки Telegram бота\nBOT_TOKEN=your_telegram_bot_token\n\n# Настройки парсера\nMAX_PRODUCTS=500\nREQUEST_DELAY=1.5\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbogdang888g%2Fyandex_cloud_course_work_update","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbogdang888g%2Fyandex_cloud_course_work_update","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbogdang888g%2Fyandex_cloud_course_work_update/lists"}