A scalable data warehouse for collecting, cleaning, and analyzing Ethiopian medical business data scraped from Telegram channels, with integrated object detection using YOLO.
# Ethiopian Medical Data Warehouse
This project scrapes Ethiopian medical business data from **Telegram channels**, cleans and processes the data, stores it in a **data warehouse**, and applies **object detection using YOLO** for image analysis.
## π Features
- β
**Telegram Bot Scraper** - Extracts messages and images from public channels
- β
**Data Cleaning & Transformation** - Processes scraped data for consistency
- β
**Object Detection with YOLO** - Detects relevant objects in images
- β
**Data Warehouse Integration** - Stores structured data for analysis
- β
**Logging & Monitoring** - Tracks scraping activity
---
## π Project Structure
```
π ethiopian_medical_business_scraper
βββ π data_scraper
β βββ bot_scraper.py # Scrapes Telegram messages
β βββ image_scraper.py # Downloads images
β βββ config.py # Stores API keys
β βββ logging_config.py # Logging setup
β
βββ π data_processing
β βββ clean_data.py # Cleans and transforms data
β βββ process_images.py # Prepares images for YOLO
β
βββ π object_detection
β βββ yolo_detection.py # YOLO object detection
β βββ model_config.py # YOLO settings
β
βββ π data_warehouse
β βββ database_setup.py # Sets up database
β βββ insert_data.py # Inserts cleaned data into DB
β
βββ π utils
β βββ helpers.py # Utility functions
β βββ constants.py # Stores channel names
β
βββ π logs
β βββ scraper.log # Logs scraping activity
β
βββ π data
β βββ raw/
β β βββ messages.json # Raw scraped messages
β β βββ images/ # Downloaded images
β βββ cleaned/
β β βββ cleaned_data.csv # Processed data
β
βββ requirements.txt # Dependencies
βββ README.md # Project documentation
βββ .gitignore # Ignore unnecessary files
```
---
## π§ Installation
### 1οΈβ£ **Clone the repository**
```bash
git clone
github.com
cd ethiopian_medical_ β¦