是否存在维基百科Pageid到wikidata id映射的转储?

时间:2016-07-15 14:39:30

标签: wikipedia wikidata

此页面:http://wikidata.dbpedia.org/downloads/20160111/ 有一个名为wikidatawiki-20160111-page-ids.ttl.bz2的转储 其中包含维基数据ID,他们称之为wikipage id。 wikipage id似乎与维基百科的pageid不同。

e.g。对于德国:

  • 维基百科pageid = 11867
  • Wikidata id = Q183和wikipage id = 322。

所以基本上这个转储将Q183映射到322,而我需要将Q183映射到11867.

作为参考:https://en.wikipedia.org/w/index.php?title=Germany&curid=11867网址中的curid表示维基百科页面ID。

是否有任何具有维基数据ID和维基百科pageid的等效转储文件? (我不想使用API​​并逐个循环我的维基百科页面ID,如下所示:https://en.wikipedia.org/w/api.php?action=query&prop=pageprops&format=xml&pageids=11867

编辑:我不确定whtt究竟是wikipage id,但也许在我在问题中提到的转储顶部有一个wikipageId到Wikipedia pageid映射文件。

4 个答案:

答案 0 :(得分:1)

我终于找到了上述请求的转储:
https://dumps.wikimedia.org/enwiki/20160720/

有一个文件:
enwiki-20160720-page_props.sql.gz < br />
问题是文件是MySql脚本,而我正在寻找JSON或XML文件。我写了一个非常简短的PHP脚本来提取括号块并提供符合我需要的格式。

答案 1 :(得分:1)

如果您愿意考虑API调用解决方案而不是使用转储加格式调整,则可以使用pageprops操作的query属性。

例如,如果我们想找到Albert Einstein的Wikidata项目,给定维基百科页面标题,你可以这样做:

 https://en.wikipedia.org/w/api.php?action=query&format=json&prop=pageprops&titles=Albert Einstein

给出了:

 {
   "batchcomplete": "",
   "query": {
     "pages": {
       "736": {
         "pageid": 736,
         "ns": 0,
         "title": "Albert Einstein",
         "pageprops": {
           "defaultsort": "Einstein, Albert",
           "page_image": "Einstein_1921_by_F_Schmutzer_-_restoration.jpg",
           "wikibase-badge-Q17437798": "1",
           "wikibase_item": "Q937"
         }
       }
     }
   }
 }

像这样我们可以在wikibase_item检索wikidata项ID。

(这是Dmitry Brant

Mediawiki-api mailing list最初回答的问题

这可能是一个更好的解决方案,因为:

  1. 您只搜索所需的项目,而不必搜索整个转储
  2. 您可以直接使用JSON或XML获得答案

答案 2 :(得分:0)

我创建了一个Python软件包和命令行工具来处理名为official documentation的问题。可以通过pip install wikimapper安装。它使用Wikipedia SQL转储来创建索引,然后可以使用它非常快速地映射许多次(比Wikidata SPARQL端点要快得多)。您可以使用我的wikimapper之一并使用此sqlite3数据库,也可以使用该软件包将Wikipedia页面标题/ Wikipedia URL映射到Wikidata ID,反之亦然。使用页面名称或URL代替内部Wikipedia ID应该更方便。

答案 3 :(得分:-1)

我发现此链接可能对您有所帮助。

enwiki dump progress on 20190401

链接为:enwiki-20190401-wbc_entity_usage.sql.gz 212.5 MB

格式如下:

(43094421,'P1070','C.P1630',78195)

结构为:

`eu_row_id` bigint(20) NOT NULL AUTO_INCREMENT,
`eu_entity_id` varbinary(255) NOT NULL,
`eu_aspect` varbinary(37) NOT NULL,
`eu_page_id` int(11) NOT NULL,