refacord to support playlist editing

This commit is contained in:
Paul Lamere
2014-08-20 14:04:29 -04:00
parent acd1e8b494
commit 7601aaab58
9 changed files with 568 additions and 300 deletions

View File

@@ -0,0 +1,32 @@
# Adds tracks to a playlist
import pprint
import sys
import spotipy
import spotipy.oauth2 as oauth2
import spotipy.util as util
if len(sys.argv) > 3:
username = sys.argv[1]
playlist_id = sys.argv[2]
track_ids_and_positions = sys.argv[3:]
track_ids = [ ]
for t_pos in sys.argv[3:]:
tid, pos = t_pos.split(',')
track_ids.append( { "uri" : tid, "positions": [ int(pos)] } )
else:
print "Usage: %s username playlist_id track_id,pos track_id,pos ..." % (sys.argv[0],)
sys.exit()
scope = 'playlist-modify-public'
token = util.prompt_for_user_token(username, scope)
if token:
sp = spotipy.Spotify(auth=token)
sp.trace = False
results = sp.user_playlist_remove_specific_occurrences_of_tracks(username, playlist_id, track_ids)
pprint.pprint(results)
else:
print "Can't get token for", username

View File

@@ -0,0 +1,28 @@
# Adds tracks to a playlist
import pprint
import sys
import spotipy
import spotipy.oauth2 as oauth2
import spotipy.util as util
if len(sys.argv) > 3:
username = sys.argv[1]
playlist_id = sys.argv[2]
track_ids = sys.argv[3:]
else:
print "Usage: %s username playlist_id track_id ..." % (sys.argv[0],)
sys.exit()
scope = 'playlist-modify-public'
token = util.prompt_for_user_token(username, scope)
if token:
sp = spotipy.Spotify(auth=token)
sp.trace = False
results = sp.user_playlist_remove_all_occurrences_of_tracks(username, playlist_id, track_ids)
pprint.pprint(results)
else:
print "Can't get token for", username

View File

@@ -0,0 +1,28 @@
# Replaces all tracks in a playlist
import pprint
import sys
import spotipy
import spotipy.oauth2 as oauth2
import spotipy.util as util
if len(sys.argv) > 3:
username = sys.argv[1]
playlist_id = sys.argv[2]
track_ids = sys.argv[3:]
else:
print "Usage: %s username playlist_id track_id ..." % (sys.argv[0],)
sys.exit()
scope = 'playlist-modify-public'
token = util.prompt_for_user_token(username, scope)
if token:
sp = spotipy.Spotify(auth=token)
sp.trace = False
results = sp.user_playlist_replace_tracks(username, playlist_id, track_ids)
pprint.pprint(results)
else:
print "Can't get token for", username

View File

@@ -10,5 +10,7 @@ else:
urn = 'spotify:artist:3jOstUTkEu2JkjvRdBA5Gu'
sp = spotipy.Spotify()
artist = sp.artist(urn)
pprint.pprint(artist)