koehlma/pygrooveshark — pull request #7 by pedros (2013-02-19 02:22:57+00:00)
Title: Add `safe_download` method to classes.song

Hopefully this will help avoid the 'temporary blacklisting' that
currently occurs with the `download` method, by more closely behaving as
Grooveshark's javascript client.

* The new method is (transparently) called by `download`
* Adds songs to queue before fetching stream key
* Marks streams as taking longer than 30 seconds as required by
grooveshark
* Marks songs as downloaded
* Removes songs from queue