我正在学习维基百科的API,
什么是页面ID?如何将其转换为真实的页面URL?
我的意思是<page pageid="18630637" ns="0" title="Translation" />
,如何将18630637
更改为http://en.wikipedia.org/wiki/Translation
?
我正在学习维基百科的API,
什么是页面ID?如何将其转换为真实的页面URL?
我的意思是<page pageid="18630637" ns="0" title="Translation" />
,如何将18630637
更改为http://en.wikipedia.org/wiki/Translation
?
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
导致相同的页面。
pageid
是MediaWiki的内部文章ID。您可以使用操作API的info
属性从pageid
获取完整的URL:
https://en.wikipedia.org/w/api.php?action=query&prop=info&pageids=18630637&inprop=url
url
获取pageid
/title
? - Vikas Prasadtitles
参数代替:https://en.wikipedia.org/w/api.php?action=query&prop=info&titles=Stack_Overflow
。 - Matěj G.url
,我们可以获取到 title
或者 pageid
吗? - Vikas Prasad另外,如果在初始API调用中添加"&prop=info&inprop=url",您还可以获取完整页面的URL:
https://en.wikipedia.org/w/index.php?title=Whistling_hare
重定向到https://en.wikipedia.org/wiki/Pika
。对于这些页面,参数redirect=no
存在 (https://en.wikipedia.org/w/index.php?title=Whistling_hare&redirect=no
)。我希望有一个 URL,像https://en.wikipedia.org/w/index.php?curid=186307&redirect=yes
。实际上,https://en.wikipedia.org/w/index.php?curid=186307
默认重定向到https://en.wikipedia.org/w/index.php?title=Pika&curid=186307
。 - freezed