# Bank Reviews Data Warehouse
A comprehensive Python-based data warehouse solution for analyzing customer reviews of bank branches in Morocco using Google Maps API.
## Features
- **Data Collection**: Automated scraping of bank reviews from Google Maps API
- **Text Processing**: Advanced text cleaning and normalization
- **Sentiment Analysis**: Multi-method sentiment classification (TextBlob + ML)
- **Topic Modeling**: LDA-based topic discovery and analysis
- **Visualizations**: Rich dashboards and interactive charts
- **Local Storage**: CSV/JSON-based data persistence
- **Automation**: Cron/Task Scheduler integration
## Project Structure
```
bank-reviews-warehouse/
├── main.py # Main pipeline runner
├── config.py # Configuration settings
├── data_collector.py # Google Maps API data collection
├── text_processor.py # Text cleaning and preprocessing
├── sentiment_analyzer.py # Sentiment analysis
├── topic_modeler.py # LDA topic modeling
├── visualizer.py # Data visualization
├── utils.py # Utility functions
├── automation_setup.py # Automation setup helper
├── requirements.txt # Python dependencies
├── .env # Environment variables
├── README.md # This file
├── data/ # Data storage
│ ├── raw/ # Raw collected data
│ ├── processed/ # Cleaned data
│ └── models/ # Saved ML models
├── outputs/ # Generated reports
└── logs/ # Application logs
```
## Setup Instructions
### 1. Environment Setup
```bash
# Clone or download the project
cd bank-reviews-warehouse
# Install dependencies
pip install -r requirements.txt
# Create .env file with your Google Maps API key
cp .env.example .env
# Edit .env and add your API key
```
### 2. Google Maps API Setup
1. Go to Google Cloud Console
2. Create a new project or select existing one
3. Enable Google Maps Places API
4. Create credentials (API Key) …