Git Product home page Git Product logo

rdio-history's Introduction

Rdio Player History

A simple set of Ruby scripts that helps you mine out your Rdio listening history.

Disclaimer

I used this script to collect my personal listening history for a dataviz project. While there is an existing REST API which auths over oauth, the history end point is not available at this time. This script fetches tokens from the web client, then re-uses the session tokens to authenticate and hit the existing history API endpoint.

Please use at own risk.

Rdio peeps, just let me know if this is a problem, I'll happily take this library down.

Example usage from Rake

rake
Enter username: chanian

40 Years Back Come - Röyksopp
She's So - Röyksopp
Remind Me - Röyksopp
Royksopp's Night Out - Röyksopp
A Higher Place - Röyksopp
Poor Leno - Röyksopp
In Space - Röyksopp
Sparks - Röyksopp
Eple (Original Edit) - Röyksopp
So Easy - Röyksopp
Animal - Pearl Jam

Example usage from Library

  username = 'chanian'
  rdio = Rdio::History::Fetcher.new(username)  
  rdio.fetch.each do |song|
    puts "#{song.name} - #{song.artist}"
  end

Example fetching multiple pages of data

  # We're only doing a small batch of ~10 per fetch
  # The cursor will auto advance
  username = 'chanian'
  rdio = Rdio::History::Fetcher.new(username)  
  history = []
  history.concat rdio.fetch
  history.concat rdio.fetch
  history.concat rdio.fetch
 
  puts history.length

Running tests

rake spec

Have fun.

rdio-history's People

Contributors

outcassed avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

rdio-history's Issues

cannot load such file -- lib/rdio-history

Getting a weird issue and i'm not sure why when running bundle exec rake 👍

cannot load such file -- lib/rdio-history

Deactivating my Rdio account now that they're bought and shutting down and i wanted my history.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.