Rdio announced they were filing for bankruptcy, and would be shutting down account service at the end of users billing cycles. Because of this bad news, I needed a replacement music service. I decided to try out Google Music Play as I am already invested in the Google ecosystem of products.
I have been using Rdio for close to 5 years, and I have amassed a library of favourited music that would take me a forever to replicate on Google Play Music. I needed a way to import the library from Rdio to Google. After some quick research, I realized I could easily build a tool to do this.
The tool is not a product. Its a manually ran process to get the job done. Could it be wrapped in a GUI and be made for the less technical? Sure. But thats not my need. I developed it very quickly to get going on Google Music. Use at your own risk, change however you like, make a product, etc..
Requirements: Python, PHP, Google Play Music All Access, Rdio, Unofficial Google Music API
How the tool works:
- Authenticate with Rdio app. Get the access token.
- Exports “Artist|Album” combination in to a CSV file.
- Parse each row of the CSV to lookup artist on Google Music.
- Fetch the artists albums.
- Compare each album name to the Rdio album name. I used the Levenshtein algorithm to compare album names for similarities. A good match is anything 3 or below. You could alter this to be more loose.
- If an album matches, find each song on the album.
- Add each song to the Google Music library.
Using the tool:
- Create your own Rdio app. Fill in the details in conf.php.
- Visit auth.php in a browser. Get your accounts access token.
- Put the access token in rdio-export.php.
- Run “php rdio-export.php”.
- Verify your favourites in data/favourites.csv”.
- Fill in your Google account details in google-import.php. You can also use two stage authentication here.
- Run “python google-import.php >> import.txt”.
I piped the output of the import in to a file so I could go through it and see what albums did’t import.
Download the source: https://bitbucket.org/bmilleker/rdio-to-google
Feel free to contact me for additional guidance or help.
- I had issues with installing the Unofficial Google Music API on El Capitan. I ended up installing a newer version of Python and Pip using hombrew.
- I had to loosely babysit the import to Google. Every once in awhile it would fail from a song name having special characters in it. I imagine this could be solved in the Python script. It would also fail from hitting Google too much. This happened once to me.
- I imported 1200+ albums and it worked great.