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

如何通过Wikidata SPARQL获取维基百科重定向URL的对应实体?

解决维基百科重定向URL关联Wikidata实体的问题

方法1:在SPARQL中直接处理重定向

Wikidata的SPARQL支持wikibase:redirect谓词来处理维基百科页面的重定向关系,通过路径表达式可以让查询自动遍历重定向链,匹配到最终目标页面对应的Wikidata实体。修改后的查询如下:

prefix schema: <http://schema.org/>
prefix wikibase: <http://wikiba.se/ontology#>
SELECT ?originalUrl ?item WHERE {
  VALUES ?originalUrl {
    <https://en.wikipedia.org/wiki/Peninsular_War>
    <https://en.wikipedia.org/wiki/Napoleon_I_of_France>
  }
  # 零或多个重定向步骤,兼容普通页面和重定向页面
  ?originalUrl wikibase:redirect*/schema:about ?item.
}

这个查询的逻辑是:

  • 对于无重定向的URL(比如半岛战争的页面),直接通过schema:about关联对应的Wikidata条目
  • 对于重定向URL(比如拿破仑一世的页面),会自动跳转到最终的目标页面,再关联到对应的Wikidata实体

方法2:预解析重定向获取目标URL

如果偏好先处理URL再查询,可以通过维基百科的工具或内部接口获取每个重定向URL的最终目标地址,再将目标URL代入你原本的SPARQL查询。这种方式需要额外的步骤,但适合需要单独处理URL的场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 16:42:39