Множественные области приводят к неудачной авторизации

#python #spotify #spotipy

#python #spotify #spotipy

Вопрос:

Я пытался заставить свою авторизацию работать, используя поток кода авторизации с примером из Spotipy API, как показано ниже.

 import sys
import spotipy
import spotipy.util as util

scope = 'user-library-read playlist-read-private' # or else

if len(sys.argv) > 1:
    username = sys.argv[1]
else:
    print("Usage: %s username" % (sys.argv[0],))
    sys.exit()

token = util.prompt_for_user_token(username, scope)

if token:
    sp = spotipy.Spotify(auth=token)
    results = sp.current_user_saved_tracks()
    for item in results['items']:
        track = item['track']
        print(track['name']   ' - '   track['artists'][0]['name'])
else:
    print("Can't get token for", username)
  

Мне удалось заставить его работать просто отлично с заданной областью 'user-library-read' , но при изменении области или добавлении другой я получаю запрос на повторную аутентификацию. Я копирую URL перенаправления в редакторе как обычно и получаю следующую ошибку:

 Traceback (most recent call last):
  File "C:/Users/Joel/PycharmProjects/untitled1/test.py", line 13, in <module>
    token = util.prompt_for_user_token(username, scope)
  File "C:UsersJoel.virtualenvsuntitled1-1cFj5f_ilibsite-packagesspotipyutil.py", line 86, in prompt_for_user_token
    token_info = sp_oauth.get_access_token(code)
  File "C:UsersJoel.virtualenvsuntitled1-1cFj5f_ilibsite-packagesspotipyoauth2.py", line 217, in get_access_token
    raise SpotifyOauthError(response.reason)
spotipy.oauth2.SpotifyOauthError: Bad Request
  

Есть идеи, что я здесь делаю не так? Я в тупике, поскольку он отлично работает с этой одной конкретной областью (и не требует от меня авторизации, поскольку я уже это сделал), но с другими я получаю это.

Кроме того, при запуске кода в моем терминале мне также требуется авторизоваться, только я получаю следующую ошибку в браузере: INVALID_CLIENT: Invalid redirect URI

Комментарии:

1. Ваш код работает для меня — я бы попробовал еще раз, если API учетных записей Spotify не работает, и дважды проверьте, правильно ли настроен URI перенаправления.