我想开发一个应用程序来拉动我们查询的任何歌曲的歌手。因此,如果有人从Some Nights专辑中输入Carry On,该应用程序应该会拉出所有人都唱这首歌。感谢。
答案 0 :(得分:2)
您可以使用Freebase Search API和Search 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
过滤器参数将结果限制为仅作为名为“Some Nights”的专辑发行版的一部分的曲目
filter=(all+/music/release_track/release:"Some+Nights")
输出参数告诉API在响应中返回哪些属性。在这种情况下,我们想知道曲目属于哪个版本以及哪个艺术家录制了曲目。
output=(/music/release_track/release+/music/release_track/recording./music/recording/artist)
您会注意到此查询现在实际上返回了8个匹配的曲目。这是因为专辑的许多不同版本都包含该曲目的录音(并不一定是完全相同的录音)。
对于您正在构建的内容,听起来您应该能够获得第一个结果。您可以将搜索API限制为仅通过向请求添加limit参数来返回第一个结果:
limit=1