2015-02-24 66 views
0

因此,目前我已經有一個系統在我的localhost:8080上運行Flask,一次向公共Spotify播放列表添加1首歌曲。不幸的是,我如何實現這一點,它需要瀏覽器添加一首歌曲。我希望能夠做的是URLLIB,或者可能是REQUESTS庫在沒有瀏覽器的情況下執行此操作。我一直沒有成功地嘗試這個bot URLLIB,而REQUESTS只看到我的本地主機的第一頁,它不會被重定向到我在下面鏈接的代碼中的回調。Python 3:Spotify將歌曲添加到公共播放列表

My Implementation

我怎麼會去實現的非瀏覽器界面的歌曲添加到播放列表? (請注意,這是Python 3)

+0

如果不通過Web瀏覽器,您會如何運行應用程序? 命令行?如果是這樣的話,您可以在python模塊的'if __name__ ==「__main __」:'部分創建請求對象並將其發送到spotify播放列表。 – NuclearPeon 2015-02-24 18:48:26

+0

我不知道如何做到這一點,你可以扔我一些參考和例子。 – user3448848 2015-02-24 20:59:26

回答

1

爲了將歌曲添加到播放列表中,您需要播放列表的所有者授予對您的應用程序的訪問權限,因此您需要一個Web界面才能執行此步驟。

使用Authorization Code Flow獲取訪問令牌非常重要,因爲這就是您將獲得訪問令牌和刷新令牌的方式。在您的應用中使用該刷新令牌來獲取access tokens,而無需用戶重新授權您的應用。

所以在短暫的:

  1. 實現使用授權碼網站。用戶登錄並獲得訪問令牌和刷新令牌。使用刷新令牌,您將能夠生成訪問令牌,而無需用戶輸入其憑據。

  2. 取出刷新標記並將其包含在腳本中。在請求添加音軌之前,請使用刷新令牌獲取新的訪問令牌。

這有點麻煩,但這是使用OAuth2而不暴露用戶的用戶名和密碼到應用程序的唯一方法。

+0

我結束了將python 2.7的spotipy移植到python 3 – user3448848 2015-02-25 23:51:28

相關問題