88

我正在研究维基百科 API,

一些演示 api 调用

什么是pageid?如何将其更改为真实的页面网址?

我的意思是<page pageid="18630637" ns="0" title="Translation" />,如何18630637变成http://en.wikipedia.org/wiki/Translation

4

3 回答 3

137

您可以只使用这样的 URL:

http://en.wikipedia.org/?curid=18630637

这是最短的形式,其他形式也是可能的:

http://en.wikipedia.org/wiki?curid=18630637

http://en.wikipedia.org/wiki/Translation?curid=18630637

http://en.wikipedia.org/w/index.php?curid=18630637

请注意,如果您指定 curid,MediaWiki 会忽略页面标题,因此即使

http://en.wikipedia.org/wiki/FooBar?curid=18630637

导致相同的页面。

于 2012-03-20T19:05:12.413 回答
84

是 MediaWiki的pageid内部文章 ID。您可以使用操作 API 的info属性从以下位置获取完整 URL pageid

https://en.wikipedia.org/w/api.php?action=query&prop=info&pageids=18630637&inprop=url

于 2011-05-29T17:15:50.810 回答
13

哦,如果您添加“&prop=info&inprop=url”,您还可以在初始 API 调用中获取完整页面 URL:

http://en.wikipedia.org/w/api.php?action=query&generator=search&gsrsearch=meaning&srprop=size%7Cwordcount%7Ctimestamp%7Csnippet&prop=info&inprop=url

于 2012-03-20T19:10:15.547 回答