Spotipy-401令牌错误“未提供令牌”,带有.search函数

zte4gxcn  于 2022-09-18  发布在  Java
关注(0)|答案(1)|浏览(166)

我有一个包含专辑信息的词典列表,我正试图使用这些词典在Spotify中进行搜索,然后添加到用户保存的专辑中。我尝试按照SPOTPY文档中给出的示例进行操作,但是,在通过SPOTYY使用搜索功能时遇到问题。

SCOPE = 'user-library-modify'

sp = spotipy.Spotify(auth_manager=SpotifyOAuth(CLIENT_ID, CLIENT_SECRET, REDIRECT_URI, scope=SCOPE))

for album in newMusic:
    albumName = album["Title"]
    artistName = f"{album['Last Name']}+{album[' First Name']}"
    getRecord = sp.search(q = f"artist:{artistName}&album:{albumName}", type='album')  
    print(getRecord)

我在运行后出现提示时提供了重定向URL,但这会导致每个专辑结果的401响应如下:

{
  "error": {
    "status": 401,
    "message": "No token provided"
  }
}

我有包含访问和刷新令牌的.cache文件,但它仍然显示没有提供令牌。我以为我输入的查询可能有误,但我看不出有任何错误。示例结束URL如下所示:

https://api.spotify.com/v1/search?query=artist:band+name&album:album+name&type=album&offset=0&limit=10

我到底做错了什么?如何才能识别我的访问代码?

eit6fx6z

eit6fx6z1#

发现问题;查询条目格式错误。我找到了过去一个问题的答案:Using python to get a track from the spotify API by using search Endpoint

艺术家、专辑等不需要单独声明(例如,“Artist:”、“Always:”)。它们应该结合在一起,如下所示:

https://api.spotify.com/v1/search?query=first+name+last+name+album+title&type=album&offset=0&limit=10

奇怪的是,这与Spotify API文档中给出的查询值示例相矛盾:

示例值:“重新掌握%20Track:Doxy+Artist:Miles%20Davis”

Https://developer.spotify.com/documentation/web-api/reference/#/operations/search

相关问题