题
我试图让我周围的DBpedia的JSON模式头,想不通提取特定节点的有效方法:
这是什么DBpedia中给我:
http://dbpedia.org/data/Ceramic_art.json
我已经得到了整个事情的Python中的JSON对象,但真的不知道如何从这些数据中得到英文摘要。我已经得到了这么远:
u = "http://dbpedia.org/data/Ceramic_art.json"
data = urlfetch.fetch(url=u)
json_data = json.loads(data.content)
for j in json_data["http://dbpedia.org/resource/Ceramic_art"]:
if(j == "http://dbpedia.org/ontology/abstract"):
print "it's here"
不知道如何从这里着手。正如你可以看到有多种语言。我需要得到英文摘要。
感谢您的帮助,
克
解决方案
print [abstract['value'] for abstract in json_data["http://dbpedia.org/resource/Ceramic_art"]["http://dbpedia.org/ontology/abstract"] if abstract['lang'] == 'en'][0]
显然,你会想要做的比这更多的错误检查,如果数据不好,但是这是基本的想法。
其他提示
这类型的字典的列表。只是想迭代通过,直到你的列表中的元素找到u'lang'
其值为u'en'
之一。
不隶属于 StackOverflow