This project demonstrates a full ETL (Extract, Transform, Load) workflow using Python to pull Pokémon data from PokeAPI, transform it, and store it in a SQLite database. The script also includes querying and export functionality, making it easy to interact with or analyze the data.
- Fetch all Pokémon data (currently ~1000 Pokémon) from the PokeAPI
- Transform and normalize data into relational tables:
pokemon– core stats (id, name, height, weight, base_experience)types– Pokémon typesabilities– Pokémon abilitiesstats– HP, Attack, Defense, Special Attack, Special Defense, Speed
- Interactive command-line interface:
- Query database with standard SQL commands
- Export query results to CSV or JSON
- Rebuild database from scratch (
REFRESH DB) - Export full database (
EXPORT DB)
- Logging of all actions and errors for auditing
- Python 3.9+ installed
- Internet connection for fetching data from PokeAPI
- Command-line interface (terminal, CMD, PowerShell)
- Clone the repository:
git clone https://github.com/yourusername/pokeapi-etl.git cd pokeapi-etl