def test_custom_requests_session(self): from txrequests import Session with Session() as sess: sess.headers["user-agent"] = "spotipy-test" with_custom_session = spotipy_twisted.Spotify( requests_session=sess) user = yield with_custom_session.user(user="******") self.assertTrue(user["uri"] == "spotify:user:akx")
# Replaces all tracks in a playlist import pprint import sys import spotipy_twisted import spotipy_twisted.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_twisted.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
import spotipy_twisted birdy_uri = 'spotify:artist:2WX2uTcsvV5OnS0inACecP' spotify = spotipy_twisted.Spotify() results = spotify.artist_albums(birdy_uri, album_type='album') albums = results['items'] while results['next']: results = spotify.next(results) albums.extend(results['items']) for album in albums: print(album['name'])
from spotipy_twisted.oauth2 import SpotifyClientCredentials import spotipy_twisted import pprint client_credentials_manager = SpotifyClientCredentials() sp = spotipy_twisted.Spotify( client_credentials_manager=client_credentials_manager) search_str = 'Muse' result = sp.search(search_str) pprint.pprint(result)
from twisted.internet import defer from twisted.trial import unittest ''' Client Credentials Requests Tests ''' class ClientCredentialsTestSpotipy(unittest.TestCase): ''' These tests require user authentication ''' muse_urn = 'spotify:artist:12Chz98pHFMPJEknJQMWvI' @defer.inlineCallbacks def test_request_with_token(self): artist = yield spotify.artist(self.muse_urn) self.assertTrue(artist['name'] == u'Muse') if __name__ == '__main__': spotify_cc = SpotifyClientCredentials() spotify = spotipy_twisted.Spotify(client_credentials_manager=spotify_cc) spotify.trace = False import sys from twisted.scripts import trial sys.argv.extend([__name__]) trial.run()
def setUp(self): self.spotify = spotipy_twisted.Spotify()
def test_unauthenticated_post_fails(self): spotify = spotipy_twisted.Spotify() with self.assertRaises(SpotifyException) as cm: yield spotify.user_playlist_create("spotify", "Best hits of the 90s") self.assertEqual(cm.exception.http_status, 403)