2013-11-01 39 views
2

我想开发一个应用程序,可以吸引我们查询的任何歌曲的歌手。因此,如果某人在Some Nights专辑中输入“Carry On”,应用程序应该将所有歌曲都唱出来。谢谢。Freebase从歌曲中获得歌手

+0

你需要与你希望发展什么样的“应用”标记。 [许多语言]似乎都有类似的内容(https://developers.google.com/freebase/v1/search-overview)。 – beroe

回答

2

可以搜索该使用Freebase Search APISearch Metaschema这样的:

https://www.googleapis.com/freebase/v1/search?query=Carry+On&filter=(all+/music/release_track/release:"Some+Nights")&output=(/music/release_track/release+/music/release_track/recording./music/recording/artist) 

有三个部分,以该API请求:查询,过滤器和输出参数。该查询只是简单的轨道,你要寻找的名称:

query=Carry+On 

滤波器参数限制了结果只跟踪其命名为“有些晚上,”

filter=(all+/music/release_track/release:"Some+Nights") 
专辑发行版的一部分

输出参数告诉API在响应中返回哪些属性。在这种情况下,我们想要知道该曲目属于哪个发行版,以及哪个艺术家录制了曲目。

output=(/music/release_track/release+/music/release_track/recording./music/recording/artist) 

你会注意到这个查询实际上返回了8个匹配的曲目。这是因为专辑的许多不同版本都包含了该曲目的录音(而不一定是完全相同的录音)。

对于你正在建造的东西,听起来你应该能够取得第一个结果。您可以限制搜索API只能通过增加一个限制参数请求返回的第一个结果:

limit=1 
+0

非常感谢! – msundarmsa