【问题标题】:Python 3: Spotify Add Song To Public PlaylistPython 3:Spotify 将歌曲添加到公共播放列表
【发布时间】:2015-02-24 17:22:07
【问题描述】:

所以目前我有一个使用Flask 在我的 localhost:8080 上运行的系统,可以一次将一首歌曲添加到公共 Spotify 播放列表。不幸的是,我是如何实现这一点的,它需要一个浏览器来添加一首歌曲。我想要做的是 URLLIB 或 REQUESTS 库在没有浏览器的情况下执行此操作。我尝试执行此机器人 URLLIB 并没有成功,REQUESTS 只看到我本地主机的第一页,它永远不会重定向到我在下面链接的代码中的回调。

My Implementation

我将如何实现一个非浏览器界面来将歌曲添加到播放列表? (请注意,这是 python 3)

【问题讨论】:

  • 如果不通过 Web 浏览器,您希望如何运行应用程序?命令行?如果是这种情况,您将在 python 模块的 if __name__ == "__main__": 部分创建 requests 对象并将其发送到 spotify 播放列表。
  • 我不知道该怎么做你能给我一些参考和例子。

标签: python flask localhost spotify python-3.4


【解决方案1】:

要将歌曲添加到播放列表,您需要播放列表的所有者授予对您的应用程序的访问权限,因此您有时需要一个网络界面来执行此步骤。

使用Authorization Code Flow 获取访问令牌很重要,因为这就是您获取访问令牌和刷新令牌的方式。在您的应用中使用该刷新令牌来获取access tokens,而无需用户重新授权您的应用。

简而言之:

  1. 实现一个使用授权码的网站。用户登录,您获得访问令牌和刷新令牌。使用刷新令牌,您将能够生成访问令牌,而无需用户输入其凭据。

  2. 获取刷新令牌并将其包含在您的脚本中。在请求添加曲目之前,请使用刷新令牌获取新的访问令牌。

这有点麻烦,但这是使用 OAuth2 而不会将用户的用户名+密码暴露给应用程序的唯一方法。

【讨论】:

  • 我最终将 python 2.7 的 spotipy 移植到了 python 3
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-05-04
  • 2017-06-16
  • 2012-09-22
  • 1970-01-01
  • 2017-08-04
  • 2012-12-20
  • 2016-07-01
相关资源
最近更新 更多