如何使用 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 获取艺术家列表