我可以从spotify API中保存哪些数据?

时间:2018-04-19 13:32:26

标签: api web spotify libspotify

我正在建立一个网站,并且我将Spotify API用作音乐库。我想添加更多的过滤器和订单选项来搜索trak而不是api允许我这样我想知道我可以从API保存到我的数据库的歌曲/歌曲数据,如艺术家名称或受欢迎程度。

我想保存:姓名,艺术家,专辑和其他一些东西。这可能还是违反条款和条件?

提前致谢!

1 个答案:

答案 0 :(得分:1)

是的,有可能。

数据存储在端点的Spotify API中。

Spotify API endpoint reference here.

每个端点处理客户端(您)请求的特定类型的数据。

我会举一个例子。所有其他端点都适用相同的逻辑。

import requests

   """
   Import library in order to make api calls.
   Alternatively, ou can also use a wrapper like "Spotipy" 
   instead of requesting directely.
   """

# hit desired endpoint
SEARCH_ENDPOINT = 'https://api.spotify.com/v1/search'

# define your call
def search_by_track_and_artist(artist, track):

    path = 'token.json' # you need to get a token for this call
                        # endpoint reference page will provide you with one
                        # you can store it in a file

    with open(path) as t:
        token = json.load(t)

    # call API with authentication
    myparams = {'type': 'track'}
    myparams['q'] = "artist:{} track:{}".format(artist,track)
    resp = requests.get(SEARCH_ENDPOINT, params=myparams, headers={"Authorization": "Bearer {}".format(token)})
    return resp.json()

试一试:

search_by_track_and_artist('Radiohead', 'Karma Police')

存储数据并根据需要进行处理。但您必须遵守Spotify条款才能公开。

旁注:Spotipy docs.