def popular(self): http = httplib2.Http() url = 'http://cowbell.grooveshark.com/more.php?popularGetSongs' popularPOSTdata = ('''{"header":{"token":"%s","session":"%s","uuid":"%s","client":"gslite","clientRevision":"%s"},''' '''"parameters":{},"method":"popularGetSongs"}''' % (self.token, self.session, self.uuid, self.clientRevision)) request, reply = http.request(url, 'POST', headers = HEADER, body = popularPOSTdata) return json.loads(reply)['result']['Songs']
def getToken(self): http = httplib2.Http() url = 'https://cowbell.grooveshark.com/service.php' self.secretKey = hashlib.md5(self.session).hexdigest() tokenPOSTdata = ('''{"header":{"session":"%s","uuid":"%s","client":"gslite","clientRevision":"%s"},''' '''"parameters":{"secretKey":"%s"},"method":"getCommunicationToken"}''' % (self.session, self.uuid, self.clientRevision, self.secretKey)) request, reply = http.request(url, 'POST', headers = HEADER, body = tokenPOSTdata) return json.loads(reply)['result']
def search(self, search_string): http = httplib2.Http() data = ('''{"header":{"session":"%s","uuid":"%s","client":"gslite","clientRevision":"%s","token":"%s"},''' '''"parameters":{"type":"Songs","query":"%s"},"method":"getSearchResults"}''' % (self.session, self.uuid, self.clientRevision, self.token, search_string.lower())) self.response, self.result = http.request(self.search_url, 'POST', headers = header, body = data) self.result = self.result self.searchResults = json.loads(self.result)['result']['Return'] return self.searchResults
def songKeyfromID(self, id): http = httplib2.Http() self.songID = id songKeyURL = ' http://cowbell.grooveshark.com/more.php?getStreamKeyFromSongID' songKeyPOSTdata = ('''{"header":{"token":"%s","session":"%s","uuid":"%s","client":"gslite","clientRevision":"%s"},''' '''"parameters":{"songID":%s,"prefetch":false},"method":"getStreamKeyFromSongID"}''') % (self.token, self.session, self.uuid, self.clientRevision, self.songID) request, reply = http.request(songKeyURL, 'POST', headers = HEADER, body = songKeyPOSTdata) self.reply = json.loads(reply)['result'] print reply streamServer = self.reply['result']['streamServer'] self.songKey = self.reply['result']['streamKey'] return (self.songKey, streamServer)
def popular(self): http = httplib2.Http() url = 'http://cowbell.grooveshark.com/more.php?popularGetSongs' popularPOSTdata = ( '''{"header":{"token":"%s","session":"%s","uuid":"%s","client":"gslite","clientRevision":"%s"},''' '''"parameters":{},"method":"popularGetSongs"}''' % (self.token, self.session, self.uuid, self.clientRevision)) request, reply = http.request(url, 'POST', headers=HEADER, body=popularPOSTdata) return json.loads(reply)['result']['Songs']
def getToken(self): http = httplib2.Http() url = 'https://cowbell.grooveshark.com/service.php' self.secretKey = hashlib.md5(self.session).hexdigest() tokenPOSTdata = ( '''{"header":{"session":"%s","uuid":"%s","client":"gslite","clientRevision":"%s"},''' '''"parameters":{"secretKey":"%s"},"method":"getCommunicationToken"}''' % (self.session, self.uuid, self.clientRevision, self.secretKey)) request, reply = http.request(url, 'POST', headers=HEADER, body=tokenPOSTdata) return json.loads(reply)['result']
def search(self, search_string): http = httplib2.Http() data = ( '''{"header":{"session":"%s","uuid":"%s","client":"gslite","clientRevision":"%s","token":"%s"},''' '''"parameters":{"type":"Songs","query":"%s"},"method":"getSearchResults"}''' % (self.session, self.uuid, self.clientRevision, self.token, search_string.lower())) self.response, self.result = http.request(self.search_url, 'POST', headers=header, body=data) self.result = self.result self.searchResults = json.loads(self.result)['result']['Return'] return self.searchResults
def songKeyfromID(self, id): http = httplib2.Http() self.songID = id songKeyURL = ' http://cowbell.grooveshark.com/more.php?getStreamKeyFromSongID' songKeyPOSTdata = ( '''{"header":{"token":"%s","session":"%s","uuid":"%s","client":"gslite","clientRevision":"%s"},''' '''"parameters":{"songID":%s,"prefetch":false},"method":"getStreamKeyFromSongID"}''' ) % (self.token, self.session, self.uuid, self.clientRevision, self.songID) request, reply = http.request(songKeyURL, 'POST', headers=HEADER, body=songKeyPOSTdata) self.reply = json.loads(reply)['result'] print reply streamServer = self.reply['result']['streamServer'] self.songKey = self.reply['result']['streamKey'] return (self.songKey, streamServer)