Welcome!
This is the community forum for my apps Pythonista and Editorial.
For individual support questions, you can also send an email. If you have a very short question or just want to say hello — I'm @olemoritz on Twitter.
Grooveshark downloader - enjoy :)
-
Awesome, I was wondering if this was possible. It's too cool that you decided to do it without anyone having to ask :D
-
Gotta say, transferring the downloaded file to another app with a local http server is pretty clever! Unfortunately, I can't try this because Grooveshark isn't available in Germany.
-
@omz - I've used the http server + app method for a couple of my scripts in here (Mega client, for one). This script contains a variant of SimpleHTTPServer I've been developing that has sane timeouts, limited number of responses, etc. (instead of .serve_forever). Side request: please include a newer requests module in the next release - it's gone through some major changes that are useful.
@eliskan - Well, I've done Youtube, Soundcloud, Mega, and Grooveshark. They've all been fun. Got another suggestion?
-
Pandora is a consideration, but personally I have always used Grooveshark ever since I wanted specific choice so Pandora isn't a big deal for me.
However I would like to report one issue I had with this script, a very small one (probably related to my wifi sucking).. Many of the downloads simply stopped, and never proceeded. There's no easy way to stop the script while downloading (like a 'cancel' button) when the download freezes. For example it gets to 42% then ceases entirely. At that point I would check Safari and internet works.
Even if I hit the 'stop' button in Pythonista, the script will continue to play until I close Pythonista entirely and reboot it.
It would be nice to have a 'cancel' prompt during downloads that can stop the script from running, or something along those lines, without taking up too many resources. When the script is cancelled, if the file is corrupt it might be a good idea to automatically delete.
I do love this script and like the YouTube one before, it works in GoodReader if you replace ''iDownloads://' with 'ghttp://' on line 313
-
I also have that same problem,
Would anyone know the reason why? -
I have an idea... It looks like the error is from Line 204:
base_snip = re.search(r'window\.GS\.config.+?(\{.+?\});', self.base_html).groups()[0]
Looking into it...
-
So just in case anyone runs across this page, here is the fix. This illustrates ones of the major problems with screen scraping: authors change the structure of their content and it ruins your day.
Replace Line 204:
base_snip = re.search(r'window\.GS\.config.+?(\{.+?\});', self.base_html).groups()[0]
With:
base_snip = re.search(r'GS\.config.+?(\{.+?\});', self.base_html).groups()[0]
Notice: the only thing changed was removing "window.". The reason this is happening is that GrooveShark changed the structure of that particular piece of JavaScript so the regex doesn't match anything anymore. The regex searching does not have a "graceful" failure, so it just crashes the whole application without really telling you why: it can't find the string it's looking for!
Have a stupendous day!
PS: emailing the author of this post now in hopes he can update on github -
thank!
-
Did not work
-
Did you get the same error mentioned above?
The error I am getting now is that no search results were found. The problem seems to be with
_getResultsFromSearch
Hoping the developer can help us out :) I'll update when I know more
-
Yea it looks like the session information isn't being handled properly. Maybe due to a change on the GrooveShark side? The client isn't able to present a valid token or some such nonsense. Unfortunately I am not very familiar with handling json object or session info... But I love this tool and will try to fix it.
-
The app is trying to post this in the _doAPICall. Can anyone help out?
{"header":{"session":"9c9afeaf0f6d46cc9855465d095ed197"},"fault":{"code":256,"message":"invalid token"}}
-
This post is deleted! -
This post is deleted! -
This post is deleted! -
This post is deleted!