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

How To Get All Songs of An Artist on Spoitfy?

在他们用于获取艺术家的热门曲目的文档中,他们提到了这一点:

最多 10 首曲目是 Spotify 应用程序显示的曲目。如果您想获取更多艺术家的热门曲目,另一种方法是使用 Echo Nest song/search 来完成此操作。它将接受 Spotify 艺术家 ID 作为输入,并在输出中为您提供 Spotify ID。

我很确定 Echo Nest Api 已经不存在了,所以我想知道除了其中 10 首以外,是否还有其他方法可以获取艺术家的歌曲?

或者,如果 Spotify 不再支持该功能,我正在考虑使用 Last.fm 的 Api 来做到这一点,如果有人对如何解决这个问题有任何其他建议,那将是伟大的!提前致谢。

我认为您无法在 Spotify 中通过单个 API 调用实现它。但是还有一个选择:

请求一个艺术家的所有专辑(看看here):

https://api.spotify.com/v1/artists/{id}/albums

然后请求每张专辑的曲目(看看here):

https://api.spotify.com/v1/albums/{id}/tracks

为避免对每个专辑进行一次请求,您可以一次获取多个专辑,当请求一张专辑时,该专辑的曲目将在 paging object. You can pass the desired albums identifiers separated by , in the id query parameter to the following endpoint (have a look here 中返回):

https://api.spotify.com/v1/albums

这里对我来说更充分的解决方案是:

https://api.spotify.com/v1/search?type=track&q=artist:ArtistName

此 returns 此艺术家的热门歌曲,分页肯定超过 10 个结果。

唯一需要注意的是,这包括艺术家可能出现的歌曲,但我认为这真的很有用,就好像它是您的用户可能正在寻找的流行歌曲一样。