如何使用 spotify api 获取艺术家的所有曲目?

Posted

技术标签:

【中文标题】如何使用 spotify api 获取艺术家的所有曲目?【英文标题】:How to get all the tracks of an artist with spotify api? 【发布时间】:2012-11-21 20:04:07 【问题描述】:

我可以通过调用这个 url 查看 spotify 上的所有曲目:

http://ws.spotify.com/search/1/track.json?q=xxx&page=1

一个示例响应包含每个曲目的艺术家数据,例如:

[artists] => Array
(
  [0] => stdClass Object
  (
    [href] => spotify:artist:38IfmizrHTCxFjd8UKhWnp
    [name] => Husman
  )
)

从上述回复中,我得到的艺术家 ID 为:38IfmizrHTCxFjd8UKhWnp

现在,有没有办法通过 api 调用获取上述艺术家 (38IfmizrHTCxFjd8UKhWnp) 的所有曲目?

我想做的是,我想在我的应用程序中显示每个艺术家的曲目。

我看到我们可以获取艺术家的专辑,调用如下:

http://ws.spotify.com/lookup/1/?uri=spotify:artist:4YrKBkKSVeqDamzBPWVnSJ&extras=albumdetail

但我发现没有直接的方法可以通过 api 获取艺术家的曲目。

【问题讨论】:

【参考方案1】:

AFAIK,您所能做的就是基于名称的曲目搜索,例如http://ws.spotify.com/search/1/track.json?q=artist:Madonna 或高级搜索语法中的任何其他搜索。

Advanced Search Syntax 的链接目前似乎已断开,但您应该可以查看this cached version。

如果您希望进行更强大的查询,我真的建议您查看The Echonest's API。它非常棒,并且支持使用 Spotify URI:s。此外,它还在不断发展,而 Spotify 提供的网络 API 在过去几年中并没有真正发展(但也许会,谁知道呢)。

【讨论】:

使用 echonest,您可以为艺术家获得的不同歌曲的数量也受到限制(100 首)【参考方案2】:

由于官方的高级语法现在被破坏了,你可以在 web-archive 中找到它: http://web.archive.org/web/20120704131650/http://www.spotify.com/us/about/features/advanced-search-syntax/

【讨论】:

【参考方案3】:

在 Spotify 开发者主页中我发现了这个 (https://developer.spotify.com/technologies/web-api/)

http://ws.spotify.com/search/1/artist?q=38IfmizrHTCxFjd8UKhWnp

也许有帮助。

【讨论】:

这个链接似乎没有给出任何有效的回应。它说:totalResults 是 0。 确实如此。如果我是您,请使用我指出的信息修改手动 Spotify API。 目前看来,我们首先要通过API获取艺人的专辑,然后再向API发送请求,获取艺人每张专辑的曲目。

以上是关于如何使用 spotify api 获取艺术家的所有曲目?的主要内容,如果未能解决你的问题,请参考以下文章

如何在不使用任何 ID 的情况下从 spotify API 获取艺术家列表

如何在 Spotify 上获取艺术家的所有歌曲?

按艺术家获取所有 Spotify 歌曲的音频属性

使用 spotify-web-api-js 在 javascript 中获取 Spotify 艺术家的热门曲目

如何使用 Spotify API 获得关注者数量?

Spotify 和 Echo Nest API 不匹配,如何修复?