You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Wikidata SPARQL查询获取Top50000位在世知名人物?

调整后的SPARQL查询(筛选在世人物+排序+大容量限制)

核心修改说明

要筛选在世人物,只需在查询中排除**有死亡日期(P570)**的条目,同时加入Wikidata常用的受欢迎度排序字段(如条目声明数量wikibase:statements,代表条目完善度/关注度)。

最终查询代码

SELECT DISTINCT ?item ?itemLabel WHERE {
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE]". }
  ?item wdt:P31/wdt:P279* wd:Q215627. # 匹配人类条目(含子类)
  FILTER NOT EXISTS { ?item wdt:P570 ?deathDate. } # 排除已死亡的人物
}
ORDER BY DESC(wikibase:statements) # 按条目声明数量降序排序(体现受欢迎度)
LIMIT 50000

关键细节

  • FILTER NOT EXISTS { ?item wdt:P570 ?deathDate. }:精准过滤掉所有记录了死亡日期的人物条目,只保留在世者。
  • ORDER BY DESC(wikibase:statements):wikibase:statements是Wikidata内置的指标,数值越高代表该人物的条目信息越完善、受关注度越高,是最通用的受欢迎度排序依据。
  • 简化了原查询的嵌套结构,在保证逻辑准确的同时提升查询性能。

批量获取数据的可选方案
  • Wikidata查询服务API:通过HTTP请求提交SPARQL查询,可直接获取JSON、CSV等结构化格式的结果,适合批量数据获取。
  • Python工具库:
    • wikidata:轻量级库,支持快速查询实体属性,适合中小规模数据处理。
    • pywikibot:官方维护的功能全面的库,支持大规模数据爬取、筛选和排序,适配Wikidata的复杂数据结构。
  • 全量数据集导出:Wikidata定期发布全量数据dump,可下载后在本地进行筛选处理,满足超大规模的数据需求。

内容的提问来源于stack exchange,提问作者Matt Wise

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 10:50:15