我使用 Freebase 来获取我网站上的所有电影,但它很快就会被关闭。所以我在寻找另一个免费的电影数据库并发现了维基数据。说实话,如何查询所有电影太复杂了。
所以我想你们可以帮助我获取维基数据中的所有电影。将来我还想加入电视节目和连续剧。
编程语言并不重要,我想使用带有链接的网络查询。
最佳答案
您可以查找属于 film 实例的所有实体,在 Wikidata 中翻译为:
目前,执行此查询的最佳方法是使用 wdq.wmflabs.org API,该查询翻译为:http://wdq.wmflabs.org/api?q=claim[ 31:11424]
(避免在浏览器中进行此查询,因为这可能会导致浏览器因 )而崩溃。在我撰写本文时,此请求以数字 ID 的形式返回 157038 个项目(例如:125
)。要获取维基数据 ID,只需添加前导 Q
-> Q125
。
要从所有这些 Wikidata ID 获取标签和数据,请使用 Wikidata API wbgetentities
操作:https://www.wikidata.org/w/api.php?action= wbgetentities&ids=Q180736&format=json&languages=en
。
但请注意每个查询 50 个实体的限制
[更新] Wikidata 现在提供 SPARQL端点:the same query in SPARQL甚至这个same query but also including subclasses of films
关于freebase - 如何获取维基数据上所有电影的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32166730/