Exemple #1
0
class Playlist():
    def __init__(self, name, desc='', public=False):
        self.name = name
        self.desc = desc
        self.public = public
        self.spotify = SpotifyUtils()
        self.playlistId = self.getId()

    def getId(self):
        names = self.spotify.getPlaylistNames()
        if self.name in names:
            playlistId = self.spotify.getPlaylistIdFromName(self.name)
            print(f"got playlist id for {self.name}")
        else:
            playlistId = self.create()
            print(f"created playlist id for {self.name}")

        return playlistId

    def create(self):
        playlistId = self.spotify.createPlaylist(self.name, self.desc,
                                                 self.public)
        return playlistId

    def missingUris(self, newUris, playlistUris):
        missingUris = []
        for newUri in newUris:
            if newUri not in playlistUris:
                missingUris.append(newUri)
        return missingUris
    def metadata_request(self, uris):
        mercury_requests = mercury_pb2.MercuryMultiGetRequest()

        if type(uris) != list:
            uris = [uris]

        for uri in uris:
            uri_type = SpotifyUtils.get_uri_type(uri)
            uri_id = SpotifyUtils.uri2id(uri)
            mercury_request = mercury_pb2.MercuryRequest()
            mercury_request.body = 'GET'
            mercury_request.uri = 'hm://metadata/%s/%s' % (uri_type, uri_id)
            mercury_requests.request.extend([mercury_request])

        args = self.generate_multiget_args(SpotifyUtils.get_uri_type(uris[0]), mercury_requests)

        self.send_command('sp/hm_b64', args, self.metadata_response)
def my_callback(sp, login_data):
    #sp.metadata_request('spotify:track:3oHTgUVzVmSrtN2crDANHk')
    args = ["mp3160", SpotifyUtils.uri2id('spotify:track:5NTu6K3dvyDyQnjVelWIjW')]
    sp.send_command("sp/track_uri", args, second_callback)
Exemple #4
0
 def __init__(self, name, desc='', public=False):
     self.name = name
     self.desc = desc
     self.public = public
     self.spotify = SpotifyUtils()
     self.playlistId = self.getId()