python - 在 Python 中解析 dbpedia JSON

标签 python json dbpedia

我正试图了解 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]

显然,如果数据有误,您可能希望做更多的错误检查,但这是基本的想法。

关于python - 在 Python 中解析 dbpedia JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2823214/

相关文章:

java - 启用 proguard 时出现 Jackson 错误(缩小)

python - POST 响应长度非零,但读取为空

java - 使用 Jena、Sparql 和初始 DBPedia URI 进行简单深度搜索

python - 在闭合图中寻找唯一环

python - 在 tkinter 循环内刷新数据

python - 使用 cx-freeze 为 pygame 制作 .exe

java - 使用 GSON 将 JSON 字符串转为 Java 对象

android - 内容在 Android fragment 中不可见

user-interface - 如何运行 sparQL 查询?

python - 在负载均衡器 : django-channels 后面运行多个 daphne 实例