This is the automation script for a newer version of ArtRadio (for first version you can check djangoArtRadio V1).
ArtRadio it's an ad-free online radio player.
Note
This project using:
- JavaScript, Angular framework as frontend – code could be found: ngArtRadio - Angular
- Java, Spring boot framework as backend – code could be found: javaArtRadio - Springboot
- Automated Song Scraping: Uses Selenium to access radio websites and capture currently playing song details.
- Database Storage: Saves song information in a database for easy tracking and future analysis.
- Request Management: Manages requests efficiently by patiently waiting on the website for updates without overloading the radio station.
- Clever Auto-Refresh: Refreshes the browser tab intelligently with Selenium to handle situations where the station stops updating songs.
- Data Validation: Utilizes Pydantic to ensure accurate and consistent data handling before adding entries to the database.
- MySQL: Relational database for storing ecommerce data.
- Selenium: Web scraping, with
Chromium Driver
for browser automation. - SQLAlchemy: ORM for managing MySQL database interactions.
- Pydantic: For data validation and management within Python models.
- Python 3.11
- MySQL: Installed and running for database management.
-
Clone the repository:
git clone https://github.com/devraider/pyArtRadio-v2.0.git cd pyArtRadio-v2.0.git
-
Prepare Environment
python -m venv .venv source .venv/bin/activation python install -r requirements.txt
-
Configure Database:
- Ensure your MySQL server is running.
.env
file with your MySQL credentials.
-
Run the Application:
python main.py