【问题标题】:What data can I save from the spotify API?我可以从 spotify API 保存哪些数据?
【发布时间】:2018-09-30 00:52:35
【问题描述】:

我正在构建一个网站,并将 Spotify API 用作音乐库。我想为搜索 traks 添加比 api 允许的更多的过滤器和排序选项,所以我想知道我可以从 API 将哪些曲目/歌曲数据保存到我的数据库中,例如艺术家姓名或流行度。

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

提前致谢!

【问题讨论】:

  • 这是一个非常广泛的问题。您基本上会问整个 api 必须提供什么。如果您需要答案,请更具体地说明您要查找的数据类型。
  • 好的,我会编辑帖子

标签: api web spotify libspotify


【解决方案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.

【讨论】:

  • 感谢您的回答,但我想知道条款和条件。他们允许您保存他们的数据吗?
  • 这很有帮助。我浏览了文档,没有看到任何明确阻止我保存数据的内容。我确实读过几次,如果用户撤销访问权限,您应该清理数据。尽管我认为必须有某种限制,但我很犹豫。我的用例是保存我为用户生成的播放列表的信息,所以我知道不要添加以前添加的歌曲,并限制 API 调用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-18
  • 2016-08-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-06
  • 1970-01-01
相关资源
最近更新 更多