2013-05-13 76 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