gpt4 book ai didi

python - 如果页面不是英文,如何使用 sparql 和 dbpedia 检索 wikipageID

转载 作者:太空宇宙 更新时间:2023-11-03 17:53:30 24 4
gpt4 key购买 nike

我想检索不同语言中相同查询名称的 wikipageID。例如:

select * where { <http://dbpedia.org/resource/Mike_Quigley_(footballer)> dbpedia-owl:wikiPageID ?wikiID }
====>Mike_Quigley_(footballer) 17237449 en
select * where { <http://dbpedia.org/resource/Theodore_Roberts> dbpedia-owl:wikiPageID ?wikiID }
====>Theodore_Roberts 6831454 en
select * where { <http://de.dbpedia.org/resource/Theodore_Roberts> dbpedia-owl:wikiPageID ?wikiID }
====>Theodore_Roberts de
select * where { <http://fr.dbpedia.org/resource/Theodore_Roberts> dbpedia-owl:wikiPageID ?wikiID }
====>Theodore_Roberts fr
select * where { <http://it.dbpedia.org/resource/Theodore_Roberts> dbpedia-owl:wikiPageID ?wikiID }
====>Theodore_Roberts it
select * where { <http://ja.dbpedia.org/resource/セオドア・ロバーツ> dbpedia-owl:wikiPageID ?wikiID }
====>セオドア・ロバーツ ja
<小时/>

在第一个查询中Mike_Quigley_(footballer)这是英文的,我能够检索到它的 ID = 17237449但是当语言发生变化时,如您所见,我无法检索 wikipageID。

<小时/>
  • 如何检索这些页面的 ID
  • 比较复杂的部分是下面的链接German language Theodore_Roberts将引导我到一个页面,其中属性 wikipageID 不是 dbpedia-owl 它变得非常复杂。您知道如何解决这个问题吗?
<小时/>

太棒了,当我尝试这个查询时

SELECT ?uri ?id 
WHERE {
?uri <http://dbpedia.org/ontology/wikiPageID> ?id.
FILTER (?uri = <http://dbpedia.org/resource/Lyon>)
}

我得到以下结果:

http://dbpedia.org/resource/Lyon 863863

<小时/>

但是当我将 uri 更改为 <it.dbpedia.org/resource/Lyon> 时我什么也没得到。

最佳答案

所以,如果我理解正确的话,您想要获取 URI 的意大利语版本。但问题是您正在寻找错误的 URI。英语 DBpedia 中的 Lyon URI 的意大利语版本是 http://it.dbpedia.org/resource/Lione,我假设您正在使用它。我通过以下方式发现了这一点:

SELECT * 
WHERE {
?uri owl:sameAs ?b.
FILTER (?uri = <http://dbpedia.org/resource/Lyon>)
}

而且我无法从英语 DBPedia 获取意大利语 pageID。当我尝试使用Italian DBpedia时,它起作用了:

SELECT ?uri ?id 
WHERE {
?uri <http://dbpedia.org/ontology/wikiPageID> ?id.
FILTER (?uri = <http://it.dbpedia.org/resource/Lyon>)
}

但是,如果您查看意大利语页面http://it.dbpedia.org/resource/Lyon,您可以看到它有一个属性dbpedia-owl:wikiPageRedirects 等于 owl:sameAs 为您提供的 http://it.dbpedia.org/resource/Lione 。也许你可以通过自己的努力解决这个问题。

关于python - 如果页面不是英文,如何使用 sparql 和 dbpedia 检索 wikipageID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28809184/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com