使用 Spotify API 查找专辑的艺术家

Posted

技术标签:

【中文标题】使用 Spotify API 查找专辑的艺术家【英文标题】:Finding an Album's Artist with the Spotify API 【发布时间】:2015-01-30 05:29:37 【问题描述】:

我正在尝试使用 Spotify API 的 rails gem 来查找特定专辑的艺术家。我将首先检索专辑的名称:

album_results = RSpotify::Album.search("The Eminem Show")

为了找到该专辑的艺术家,我向上面的变量发出了以下方法:

album_results.artists

这会返回大量我不需要的数据。我想要的只是艺术家的名字。我能够通过以下方式部分实现这一点:

album_results.first.artists.first.name
=> "Eminem"

我希望它返回所有专辑结果的所有可用艺术家的名称。我尝试使用select 方法,但再次获得了太多我想要的数据:

album_results.select |album| album.artists

实现这一目标的最佳方法是什么?

【问题讨论】:

【参考方案1】:

在此处使用select 将返回所有带有artists 的记录。

您需要使用collectmap

my_artists = album_results.flat_map |album| 
  album.artists.collect|artist| artist.name

编辑

使用flat_map 默认返回一个扁平数组。

比使用collectflatten! 更高效

【讨论】:

使用flat_map 而不是外部collect 后跟flatten!

以上是关于使用 Spotify API 查找专辑的艺术家的主要内容,如果未能解决你的问题,请参考以下文章

无法在 Spotify Apps API 中获取艺术家的专辑

Spotify 搜索栏 api,允许用户搜索艺术家并接收艺术家排名前 5 的专辑

如何使用 Spotify Web API 搜索具有通用标题的专辑?

使用 Spotify SDK 关注艺术家

Spotify API 从名称中查找艺术家 ID?

使用 Spotify webAPI 播放艺术家(ID)的随机专辑