在Spotify高级搜索中对运算符进行分组

时间:2012-10-25 02:31:21

标签: spotify

我正在尝试使用Spotify Web API在一个响应中返回多个特定结果。

例如,我想要Spotify的详细信息是迈克尔杰克逊的“Thriller”和Deep Purple的“Highway Star”。

由于我还没有Spotify uris,我需要使用Search方法。还有一个页面描述了Spotify的高级搜索语法here。它们支持搜索特定字段,如曲目,艺术家和专辑。它们还支持基本的布尔运算符。

但在该页面上(或据我所知的其他任何地方)都没有描述布尔运算符优先级如何工作,或者如何对搜索条件进行分组。

我需要一些有效的东西(曲目:惊悚和艺术家:“迈克尔杰克逊”)或(曲目:“高速公路明星”和艺术家:“深紫色”)。

使用类似的标准一次只能拉入一首曲目:

http://ws.spotify.com/search/1/track?q=track:"thriller"+AND+artist:"michael+jackson"

我试图用括号跳进去,尽管文档中没有提到它们。没有运气:

ws.spotify.com/search/1/track?q=(曲目: “惊悚” + AND +艺术家: “迈克尔+杰克逊”)+ OR +(轨迹: “高速公路+星” + AND +艺术家:”深+紫色“)

然后我想我会尝试优先玩。也许他们不只是从左到右处理 - 也许OR都被解决了,然后是AND:

ws.spotify.com/search/1/track?q=track: “惊悚片” + OR +曲目: “公路+明星” + AND +艺术家: “迈克尔·杰克逊+” + OR +艺术家:“深+紫色“

这似乎很有希望,并返回185结果,但这不太对。我正在看其他乐队的名为“Highway Star”的曲目。这似乎排除了“从左到右”,“OR-before-AND”和“AND-before-OR”。这没有任何意义 - 还剩下什么?

任何拥有更多Spotify经验的人都可以了解这样的查询应该如何运作吗?

1 个答案:

答案 0 :(得分:2)

不幸的是,在Spotify的Web API中没有真正支持这一点(我已经尝试过自己,与你的结果相同)。从它的外观来看,API已经工作了几年,所以我不会期望有太大的改变。

但是,我强烈建议您查看 the Echo Nest API's ;他们支持相当powerful queries并在他们的API中有一堆很棒的东西。 此外,他们还获得了getting Spotify URI:s对搜索结果(曲目,艺术家等)的支持。这意味着您可能完全坚持使用EN API。

此外, Echo Nest 不断为其API添加更多功能,因此它真正成为音乐的首选API(远远超过Last.fm和类似功能)。

相关问题