Beispiel #1
0
	def objectFromInternalObj(self, object_type, objs, nameOnly = False):
		if nameOnly:
			return ", ".join([obj.name for obj in objs])

		try:
			uris = [SpotifyUtil.gid2uri(object_type, obj.gid) for obj in objs]
		except:
			uris = SpotifyUtil.gid2uri(object_type, objs.gid)

		return self.objectFromURI(uris, asArray = True)
def album_callback(sp, album):
    print album.name + " - " + album.artist[0].name + "\n"
    uris = [
        SpotifyUtil.gid2uri("track", track.gid)
        for track in album.disc[0].track
    ]
    sp.metadata_request(uris, track_callback)
Beispiel #3
0
	def removeTracks(self, tracks):
		tracks = [tracks] if type(tracks) != list else tracks

		uris = []
		for track in tracks:
			if track.replaced:
				uris.append(SpotifyUtil.gid2uri("track", track.old_obj.gid))
			else:
				uris.append(self.getURI())

		self.spotify.api.playlist_remove_track(self.getURI(), uris)

		self.reload_refs()
Beispiel #4
0
	def isAvailable(self):
		new_obj = self.spotify.api.recurse_alternatives(self.obj)
		if new_obj == False:
			return False
		else:
			# invalidate cache
			self._Cache__cache = {}

			if new_obj.HasField("name") == False:
				new_obj = self.spotify.api.metadata_request(SpotifyUtil.gid2uri("track", new_obj.gid))
			self.old_obj = self.obj
			self.obj = new_obj
			self.replaced = True
			return True
def album_callback(sp, album):
	print album.name+" - "+album.artist[0].name+"\n"
	uris = [SpotifyUtil.gid2uri("track", track.gid) for track in album.disc[0].track]	
	sp.metadata_request(uris, track_callback)
Beispiel #6
0
	def getURI(self):
		return SpotifyUtil.gid2uri(self.uri_type, self.obj.gid)
	print "\n"

if action == "track":
	uri = sys.argv[4] if len(sys.argv) > 4 else "spotify:track:3IKSCoHEblCE60IKr4SVNd"

	track = sp.metadata_request(uri)
	print track.name
	
elif action == "album":
	uri = sys.argv[4] if len(sys.argv) > 4 else "spotify:album:3OmHoatMS34vM7ZKb4WCY3"

	album = sp.metadata_request(uri)
	print album.name+" - "+album.artist[0].name+"\n"
	
	uris = [SpotifyUtil.gid2uri("track", track.gid) for track in album.disc[0].track]
	tracks = sp.metadata_request(uris)
	for track in tracks:
		print track.name

elif action == "playlists":
	username = sys.argv[4] if len(sys.argv) > 4 else sp.username

	playlist_uris = [playlist.uri for playlist in sp.playlists_request(username).contents.items]
	playlists = [sp.playlist_request (playlist_uri) for playlist_uri in playlist_uris]

	for playlist in playlists:
		display_playlist(playlist)
		
elif action == "playlist":
	uri = sys.argv[4] if len(sys.argv) > 4 else "spotify:user:topsify:playlist:1QM1qz09ZzsAPiXphF1l4S"
    print "\n"

if action == "track":
    uri = sys.argv[4] if len(sys.argv) > 4 else "spotify:track:3IKSCoHEblCE60IKr4SVNd"

    track = sp.metadata_request(uri)
    print track.name

elif action == "album":
    uri = sys.argv[4] if len(sys.argv) > 4 else "spotify:album:3OmHoatMS34vM7ZKb4WCY3"

    album = sp.metadata_request(uri)
    print album.name+" - "+album.artist[0].name+"\n"

    uris = [SpotifyUtil.gid2uri("track", track.gid) for track in album.disc[0].track]
    tracks = sp.metadata_request(uris)
    for track in tracks:
        print track.name

elif action == "playlists":
    username = sys.argv[4] if len(sys.argv) > 4 else sp.username

    playlist_uris = [playlist.uri for playlist in sp.playlists_request(username).contents.items]
    playlists = [sp.playlist_request(playlist_uri) for playlist_uri in playlist_uris]

    for playlist in playlists:
        display_playlist(playlist)

elif action == "playlist":
    uri = sys.argv[4] if len(sys.argv) > 4 else "spotify:user:topsify:playlist:1QM1qz09ZzsAPiXphF1l4S"