首页 > 解决方案 > 使用 DBpedia 获取 Wikipedia 页面的超链接

问题描述

我在 DBPedia 中有两个资源: dbr :Diabetes_mellitus和dbr :Hyperglycemia。在 Wikipedia 中,相应的页面是wikipedia-en:Diabetes_mellituswikipedia-en:Hyperglycemia

在 Wikipedia 中有一个从 Diabetes_mellitus 页面到 Hyperglycemia 页面的超链接。但是当我试图在 DBpedia 中找到这两个资源之间的链接时,我找不到它。

我尝试使用以下 SPARQL 查询查找链接。

SELECT ?prop WHERE {  
    { dbr:Diabetes_mellitus ?prop dbr:Hyperglycemia } 
    UNION 
    { dbr:Hyperglycemia ?prop dbr:Diabetes_mellitus } 
}

但答案是否定的。我没有得到任何答案。有没有办法在 DBpedia 的页面之间找到​​链接?

我想要实现的是获取任何维基百科页面中的所有超链接。有什么办法可以实现吗?

标签: hyperlinksparqlrdfwikipediadbpedia

解决方案


截至 2018 年 5 月,页面链接存储在<http://dbpedia.org/page_links>命名图中。

您的查询可能是以下查询:

SELECT ?prop
FROM <http://dbpedia.org/page_links> WHERE {
       { dbr:Diabetes_mellitus ?prop dbr:Hyperglycemia }
       UNION
       { dbr:Hyperglycemia ?prop dbr:Diabetes_mellitus }
}

试试看!

使用ASK

ASK
FROM <http://dbpedia.org/page_links> {
dbr:Hyperglycemia dbo:wikiPageWikiLink|^dbo:wikiPageWikiLink dbr:Diabetes_mellitus
}

试试看!


推荐阅读