2012-05-22 87 views
1

當我運行Apache Nutch 1.4爬行程序時,我想存儲一些附加信息。我想存儲每個URL的父項。更新Nutch獲取獲取的每個URL的父節點

例如,我想爬有2個錨鏈接到b.html頁面a.html和c.html所以,當我爬a.html,我應該得到的東西是這樣的: -

a.html null 
b.html a.html 
c.html a.html 

我想存儲這樣的東西。 我讀過nutch是如何工作的,並且在eclipse中也運行過nutch。我還讀取fetcher.java並記錄它獲取內容的位置。但是我沒有成功知道Nutch在哪裏獲取給定頁面的子URL。我認爲這一步發生在解析步驟後。

回答

2

我認爲可以通過生成linkdb獲取信息。

鏈接數據庫或linkdb:它包含每個URL的已知鏈接列表,包括鏈接的源URL和錨文本。它維護一個反向鏈接地圖,列出每個網址的傳入鏈接。

bin/nutch invertlinks crawldb/linkdb -dir crawldb/segments 

在解析階段,生成的Nutch出對外連結的爬網內容的後來新發現的URL存儲在更新階段到crawldb。新的網址是在下一輪/ nutch爬行中抓取的。