2013-05-13 41 views
0

我想使每个维基百科文章ID和它的类别ID(最普通的类别)的MySQL数据库。我看到维基百科给出了一个完整的转储,还有一些其他类似于类别之间的链接。此外,我看到有mediawiki但我无法找到正确的查询发送。维基百科:转储文章ID的和它的类别

但尽管如此,我无法找到如何转储大文件与文章ID和它的类别ID。 我该怎么做? 我应该期待多少数据?

+1

你打算如何找出哪一类是“最一般的”? – svick 2013-05-13 18:49:38

回答

3

Wikipedia提供转储。您需要的是categorylinks.sql,其中包含每个文章ID的类别名称列表(类别没有ID)。你也很可能想要page.sql,其中包含从文章ID到其标题的地图。

要使用转储,您可以将它们导入到本地MySQL数据库,或者您可以使用直接解析转储的库,如the one I wrote for .Net

但是每篇文章通常都有几个类别,并且没有主类别或类似的概念。所以,如果你真的只希望每篇文章只有一个类别,你将不得不自己想办法。

-1
+0

有没有办法给它只是一个文章ID,并得到返回的类别ID(最一般)? – DennisVDB 2013-05-13 18:33:57

+0

如果您想为*每个*维基百科文章执行此操作,则这不起作用。 – svick 2013-05-13 18:49:04

+0

@DnX:没有。 MediaWiki没有“最普遍的类别”的概念,我希望即使你会定义它也会受到挑战。 – hippietrail 2013-06-02 09:37:47