我知道我有阅读障碍,也没有博士学位,但我总是觉得谷歌的API难以理解。在
我只需要一个关于以下方面的例子:
获取“/music/genre”列表,然后获取第一个流派的子流派(“/music/genre/subgenre”)。然后打印/common/topic/alias
(如果有的话)。在
我的代码:
import json
import requests
query = json.dumps( [{'id': None, 'name': None, 'type': '/music/genre'}])
r = requests.get('https://www.googleapis.com/freebase/v1/mqlread?query=%s' % query )
for i in r.json()['result'][:1]:
print requests.get('https://www.googleapis.com/freebase/v1/mqlread?query=%s' % json.dumps([i]) ).text
但是后面的打印返回:
^{pr2}$如果我试图通过以下方式获取“/en/blues”as the example here主题:
print requests.get('https://www.googleapis.com/freebase/v1/topic/en/blues').text
它返回与/en/blues
查询相关的列表。在
我还尝试了以下方法直接获取子类型列表:
for i in r.json()['result'][:1]:
i['type'] = '/music/genre/subgenre'
print requests.get('https://www.googleapis.com/freebase/v1/mqlread?query=%s' % json.dumps([i]) ).text
但返回一个空数组。在
在使用Python或其他编程语言之前,您应该先在query editor中完成查询。This query将为您提供一个起点:
该查询执行两个级别的子类型,实际上您不需要以编程方式执行这两个级别的子类型,因为您可能会遍历
/music/genre
类型的所有实例,捕获所有父类型和子类型。在实际上,由于只有283种类型,所以您可以在一个查询中完成所有这些任务,即使执行这种重量级查询通常被认为是不好的形式:
^{pr2}$将为您提供所有283个父类型及其所有子类型(即所有父子节点对或弧)。在
相关问题 更多 >
编程相关推荐