使用Spotipy:Spotipy.oauth2.SpotifyOauthError:Error:invalid_cli



我一直想启动一个基于spotify的小型项目,目前我正试图利用python创建一个使用spotify库的播放列表,例如:

from spotipy.oauth2 import SpotifyClientCredentials
from spotipy.oauth2 import SpotifyOAuth
import spotipy.util as util

scope = 'playlist-modify-public'
username = 'aaronang_'
token = SpotifyOAuth(scope=scope,username=username)
spotifyObject = spotipy.Spotify(auth_manager = token)

playlist_name = input("Enter a playlistname:")
playlist_description = input("Enter a playlist description:")
spotifyObject.user_playlist_create(user=username,name=playlist_name,public=True,description=playlist_description)

我在终端的虚拟环境(venv(中设置了我的客户端id、客户端机密和重定向uri,但使用:

set CLIENT_ID=c3032b421ce94......9a05abcb623da
set CLIENT_SECRET=32a9c32611......5b69cf643f7c33e
set CLIENT_REDIRECT_URI=http://127.0.0.1:8080/

我最终得到了这个错误:

Traceback (most recent call last):
File "C:UsersAaronspotifyPlaylist.py", line 17, in <module>
spotifyObject.user_playlist_create(user=username,name=playlist_name,public=True,description=playlist_description)
File "C:UsersAaronvenvlibsite-packagesspotipyclient.py", line 784, in user_playlist_create
return self._post("users/%s/playlists" % (user,), payload=data)
File "C:UsersAaronvenvlibsite-packagesspotipyclient.py", line 302, in _post
return self._internal_call("POST", url, payload, kwargs)
File "C:UsersAaronvenvlibsite-packagesspotipyclient.py", line 221, in _internal_call
headers = self._auth_headers()
File "C:UsersAaronvenvlibsite-packagesspotipyclient.py", line 212, in _auth_headers
token = self.auth_manager.get_access_token(as_dict=False)
File "C:UsersAaronvenvlibsite-packagesspotipyoauth2.py", line 525, in get_access_token
token_info = self.validate_token(self.cache_handler.get_cached_token())
File "C:UsersAaronvenvlibsite-packagesspotipyoauth2.py", line 380, in validate_token
token_info = self.refresh_access_token(
File "C:UsersAaronvenvlibsite-packagesspotipyoauth2.py", line 596, in refresh_access_token
self._handle_oauth_error(http_error)
File "C:UsersAaronvenvlibsite-packagesspotipyoauth2.py", line 146, in _handle_oauth_error
raise SpotifyOauthError(
spotipy.oauth2.SpotifyOauthError: error: invalid_client, error_description: Invalid client

我已经看到这段代码适用于其他代码,但我的令牌无法验证。我从https://developer.spotify.com/console/put-playlist-tracks/这起到了作用。

谢谢。

尝试删除.cache,这是存储令牌的地方,spotipy将尝试使用它们,即使它们无效。删除后,使用时应重新出现验证窗口

sp = spotipy.Spotify(client_credentials_manager=client_credentials_manager, auth_manager=SpotifyOAuth(client_id=client_id, client_secret=client_secret, scope=scope, redirect_uri=redirect_uri))

相关内容

最新更新