Rdio to Google

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:

  1. Authenticate with Rdio app. Get the access token.
  2. Exports “Artist|Album” combination in to a CSV file.
  3. Parse each row of the CSV to lookup artist on Google Music.
  4. Fetch the artists albums.
  5. 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.
  6. If an album matches, find each song on the album.
  7. Add each song to the Google Music library.

 

Using the tool:

  1. Create your own Rdio app. Fill in the details in conf.php.
  2. Visit auth.php in a browser. Get your accounts access token.
  3. Put the access token in rdio-export.php.
  4. Run “php rdio-export.php”.
  5. Verify your favourites in data/favourites.csv”.
  6. Fill in your Google account details in google-import.php. You can also use two stage authentication here.
  7. 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.


Additional Notes:

  • 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.

Share Post :

More Posts

3 Comments

  • Ezra
    December 11, 2015 at 12:14 am 

    This looks cool, but step 1 could use some more detail. Where do I get the info for conf.php

    • Ezra
      December 11, 2015 at 12:18 am 

      Alright, I figured out step 1. Just took a little googling.

    • Brendon
      December 11, 2015 at 5:18 pm 

      The instructions are mostly a rough guide, not a step by step process. Let me know if you need any other help.

Leave a Reply