winXP下的Nutch初見

昨晚睡得很早,卻始終無心入眠。

一直很想嘗試下nutch,卻總是說事情太多,沒精力去做。

這學期給了自己太多的無奈,看不到目標,很迷茫。

半小時後,終究還是起牀。

 

lucene和nutch早已在硬盤裏,上網看資料教材,照着弄了半天,總算出了最初的結果。

結合幾篇教程做個總結吧。

 

首先是軟件,我是用的是nutch1.0。將文件解壓放到D:/nutch/nutch-1.0中。

然後是cygwin,用於在windows中執行linux命令,昨凌晨在線安裝了很久...尤其是到90%的時候停止了,超級崩潰。選了它的第二個鏈接從新開始,估計是在凌晨3點左右搞定了。

 

最初測試:

在Cygwin中進入D:/nutch/nutch-1.0,輸入bin/nutch

顯示:usage:nutch COMMAND即一切還順利~

貌似會有異常拋出,暫時不理~

 

開始配置

在D:/nutch/nutch-1.0下建文件夾urls,在此文件夾下建文本文件nutch.txt,其中的內容爲:http://lucene.apache.org/nutch/,就是抓取網頁的入口位置,據說可以多個地址或者多個文件,還未嘗試~

 

打開D:/nutch/nutch-1.0/conf/crawl-urlfilter.txt,找到MY.DOMAIN.NAME,修改爲:

+%5Ehttp://([a-z0-9]*/.)*apache.org/

這應該是它抓取鏈接的過濾設置,此處可以看到只有apache.org/結尾的鏈接纔會被抓取

 

配置nutch-default.xml:

找到property標籤,將其中<value>空着的部分填寫完整,<description>中是對此項的描述,下面是我的寫法:

 

然後,就要開始抓去啦..

Cygwin下執行:

bin/nutch crawl urls -dir crawled -depth 3 -topN 50 >&crawl.log

意思是從urls文件夾中讀取地址開始抓取,抓取結果放入crawled文件夾中,抓取深度爲3,topN貌似是最大節點數,執行的過程輸出到crawl.log文件中。

 

執行第一次,失敗,原來沒有JAVA_HOME環境變量,將jdk的安裝目錄添加上,ok。

 

執行再次失敗,提示D:/nutch/nutch-1.0/crawled/crawldb/current/data沒有找到。進入後發現只有文件夾part-00000,裏面有個data文件,死馬當活馬醫,拷出來放到current文件夾下,運行,終於開始抓取了~

 

抓取結束後,需要啓動tomcat查看結果。

 

將nutch1.0文件夾下的nutch1.0.war文件拷貝到tomcat的webapp文件下中,改名爲nutch.war,啓動tomcat後tomcat會將其解壓爲nutch文件夾。

進入解壓後的webapps/nutch/WEB-INF/classes目錄,將<configuration>標籤中的nutch-site.xml的search.dir設置爲D:/nutch/nutch-1.0/crawled;即抓取來數據的存放位置。

我的配置:

 

 

至此,即可啓動tomcat,輸入localhost/nutch進行搜索了~

 

 

這些都還只是皮毛,接下里要做更多研究了,剛測試了一下,中文分詞采用的是切成一個個的字,看來得替換,我用過的中文切詞包有庖丁解牛和IKanalyser,還沒在nutch上試過呢,值得去試~ 

 

參考教程:

主要參考:

http://www.360doc.com/content/07/0531/13/23378_530951.shtml

其他的:

http://blog.csdn.net/fiwiner/archive/2009/10/19/4699947.aspx

http://nhy520.javaeye.com/blog/382726

http://www.supidea.com/post/nutch_1_0.aspx

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章