SiriusXM scraper + playlist generator which powers Serious Playlists
It's a web service that scrapes the Sirius XM 'now playing' data, finds it on youtube, and plays as it is scraped. It's a makeshift free internet satellite radio service, with just the music.
Hopefully it should be pretty self-explanitory, load the page, select a station, and every 30 seconds it will search for a new track. If there is one, it will add it to the song queue. Songs are search for, and played through, YouTube. When a song ends, the next one will come on.
- Clone this repo
- Install Node.js, NPM, & Foreman (
gem install foreman)
- Install MongoDB and ensure you can connect to it. I use docker, so I would use this command:
docker run -p 27017:27017 --name sirius_mongo -d mongo
- Setup your environment file in
.env. See below for the environment variables you should include.
foreman startto start the web server on
Additionally, I deploy to Openshift, so in my prod environment I could ensure I have the variables
- Make it pretty
- Improve the song queue, make it one big long queue, instead of a upcoming and completed one.
- Make priority list for stations (using a sortable list)
- Improve the logic for selecting tracks, eg, grab 5 at startup to build the queue, select random previous song from that day if queue is empty, etc.