让我们说我需要下载与/ medicine / drugs相关的所有数据,并从Freebase下载到我自己的数据库中。我可以使用API吗?
我发现了他们的RDF转储,但它们非常庞大。我只需要一部分内容。如何使用API有效地完成这项工作?
答案 0 :(得分:0)
您可以,但API并非真正用于批量下载。 Freebase中约有8,974 drugs,所以它并非完全不可行。你可以从this query开始:
find ~/ -maxdepth 1 -type f -exec ls -l '{}' \;
并根据您的需求进行修饰。特别是,您可能需要使用游标并向查询应用程序添加游标处理支持。
或者,您可以使用MQLread API获取ID列表,然后使用Topic API查询它们,例如: /en/aspirin
最后,很多Freebase信息都来自FDA数据集,例如Structured Product Labels,因此您可以考虑直接从FDA下载相关数据集并使用它们。这还有一个额外的好处,即它们会随着时间的推移保持最新状态,不像Freebase已被冻结超过6个月并且永远不会再次更新。