4

我一直在尝试使用 spotipy 进行验证以制作播放列表等。

import spotipy
import spotipy.util as util

class buildPlayList():
    def __init__(self,name):
        scope = 'playlist-modify-public'
        self.username=name
        token = util.prompt_for_user_token(self.username, scope,client_id='', client_secret='',redirect_uri='http://example.com/callback/')
        self.sp = spotipy.Spotify(auth=token)
        print self.sp.current_user()

    def make_and_build(self):
        pass
x=buildPlayList("myname")

我运行它,然后我得到这个:

 User authentication requires interaction with your
 web browser. Once you enter your credentials and
 give authorization, you will be redirected to
 a url.  Paste that url you were directed to to
 complete the authorization.

我转到 URL 并且它是一个错误,我将它发布回命令行并且它出错。我不知道为什么这个库会这样做,所有其他库通常都使用用户名、密码、客户端 ID 和客户端密码。由于某种原因,这让你多走了一步。一些帮助将不胜感激。我正在使用所有正确的信息。我不确定这个重定向 url 是什么,也许这是导致问题的原因?

4

1 回答 1

0

按照此链接获取您的客户 ID、秘密和回调 uri。然后确保在prompt_for_user_token调用中正确设置这些参数

由于某种原因,这让你多走了一步

额外步骤的原因是您通过 url 获得的响应包括代码和状态变量,这些变量又用于获取访问令牌。然后,您最终将 Spotify Web API 与这些令牌一起使用。如果你查看官方授权指南,你会更好地理解这个故事

于 2015-10-02T22:26:30.390 回答