我正在解析Java中的Wikipedia转储。在我的模块中,我想知道当前页面引用的Wiki内部页面的页面ID。从中获取内部链接并由此获得URL很容易。但是如何从URL获取页面ID。
我需要为此使用一些mediaWiki吗?如果是的话
还有其他选择吗?
例如:http://en.wikipedia.org/wiki/United_States
我想获取其页面ID,即3434750
最佳答案
您可以为此使用API。具体来说,查询将类似于:
http://en.wikipedia.org/w/api.php?action=query&titles=United_States
(您还可以在titles
参数中指定多个页面标题,以|
分隔。)
或者,您可以下载page.sql
dump(英语Wikipedia压缩为1 GB),其中也包含此信息。要实际查询它,您可以将其导入到MySQL数据库中,然后进行查询,也可以直接解析SQL。