我正在尋找解析維基百科轉儲並檢索每個頁面中找到的超鏈接的方法。我的主要目標是創建一個關於從一個維基百科頁面轉到另一個頁面的可能路徑的定向圖。如何解析維基百科轉儲以創建鏈接圖?
例如:「狗」的頁面定義有一個鏈接到「犬的紅斑狼瘡」。所以我會有一個 Dog-> Canis Lupus作爲輸出。 PS:我更喜歡Python庫,如果有的話。
我正在尋找解析維基百科轉儲並檢索每個頁面中找到的超鏈接的方法。我的主要目標是創建一個關於從一個維基百科頁面轉到另一個頁面的可能路徑的定向圖。如何解析維基百科轉儲以創建鏈接圖?
例如:「狗」的頁面定義有一個鏈接到「犬的紅斑狼瘡」。所以我會有一個 Dog-> Canis Lupus作爲輸出。 PS:我更喜歡Python庫,如果有的話。
,因爲你正在試圖解決圖論,你需要兩樣東西 -
生產
可能您會嘗試使用來自維基媒體的XML轉儲,以達到您的目的。
最好的解決方案,我會建議使用某種解析腳本從文檔中提取出鏈接。
實施
要保存您的巨大圖,你將不得不腳本的輸出存儲在某種圖形數據庫的。看看這裏的一些流行的here。
因此,該過程很簡單。您的腳本將逐個解析文檔並將結果存儲在圖形數據庫中,您可以稍後使用它。
最簡單的方法是使用已包含頁面間鏈接信息的轉儲:pagelinks.sql。要使用它,您需要將其導入到MySQL數據庫中,然後您可以從任何語言訪問該數據庫。爲了理解該轉儲中的數據,您還需要導入page.sql。
如果您想要的只是頁面之間的鏈接,那麼XML轉儲不是一個好選擇。 – svick