首先,我想澄清一下,我使用wikidata的经验非常有限,因此,如果我的任何术语错误,请随时进行纠正。
我一直在使用wikidata工具包,更具体地说是他们的wdtk-wikibaseapi。这样,您就可以获取实体信息及其不同的属性,例如:
WikibaseDataFetcher wbdf = WikibaseDataFetcher.getWikidataDataFetcher();
EntityDocument q42 = wbdf.getEntityDocument("Q42");
List<StatementGroup> groups = ((ItemDocument) q42).getStatementGroups();
for(StatementGroup g : groups) {
List<Statement> statements = g.getStatements();
for(Statement s : statements) {
System.out.println(s.getMainSnak().getPropertyId().getId());
System.out.println(s.getValue());
}
}
以上内容使我得到了实体道格拉斯·亚当斯(Douglas Adams)以及他的网站下的所有属性:https://www.wikidata.org/wiki/Q42
现在wikidata工具包具有加载和处理转储文件的功能,这意味着您可以将转储下载到本地并使用wdtk-dumpfiles库下的 DumpProcessingController 类进行处理。我只是不确定处理是什么意思。
如果使用wikidata-toolkit无法做到这一点,请您指出一个可以使我开始从wikidata的转储文件中获取实体及其属性的地方吗?我正在使用Java。