nutch環境配置在windows系統上必須要安裝【Cygwin】。cygwin是一個在windows平台上啟動並執行unix類比環境。
一、安裝jdk
Jdk版本為1.6, :
http://www.sun.com/download/
安裝路徑:C:\Program Files\Java\jdk1.6.0_23\(安裝路徑不做硬性要求,可能由於版本不同路徑有所區別,請注意該處)
配置PATH環境變數 ;%JAVA_HOME%\bin;%TOMCAT_HOME%\bin
配置JAVA_HOME環境變數 C:\Program Files\Java\jdk1.6.0_23
配置JAVA_BIN環境變數 C:\Program Files\Java\jdk1.6.0_23\bin
配置CLASSPATH環境變數 %JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar
二、安裝Tomcat
版本為5.0 (一定要用Tomcat5.0,如果注意下載了Tomcat6.0,會導致運行時的一些不知名的異常:例如 “Attribute value details.getValue("url") is quoted with " which must be escaped when used within the value)
:
http://tomcat.apache.org/
設定TOMCAT_HOME環境變數 c:\tomcat
3.安裝Cygwin.(在windows類比linux環境)
下載Cygwin
三、準備windows下的Linux虛擬環境,即"Cygwin"
這裡我要對Cygwin 多做點文章,因為我感覺我在配置Nutch個環境時,大部分時間還是花在Cygwin上了。首先他不同於一般的軟體,不能直接下載到。只能他的一個類似於 下載器的程式去訪問Cygwin在網上的鏡像,我想不通為什麼非要通過這樣方式,也許是因為老更新吧,這樣維護方便。
第一步 下載 http://www.cygwin.com/setup.exe 只有幾K.但是這才開始下載
他有三種下載方式:
- 從Internet上直接安裝,這個據說很費時間。
- 下載但不安裝。 (推薦這樣方法)
- 從本地安裝。
下載完成後在運行 setup.exe
選擇 【從本地安裝】,點擊下一步
不用改變直接點擊下一步就可以(這個是cygwin要安裝到哪裡)
選擇你在上面下載是制定的cygwin目錄點擊下一步開始安裝。
安裝完成後可以單擊案頭上的【Cygwin】快捷方程式進行啟動,啟動後介面如下:
經過上面的過程,Cygwin就安裝完成了,待用。
Nutch下載及配置
Nutch:
http://apache.etoak.com//nutch/
http://apache.etoak.com//nutch/apache-nutch-1.2-bin.zip(這裡配置使用的是1.2,最新的是1.3)
Nutch配置:
- 解壓Nutch到d:\nutch\nutch-1.2
- 在d:\nutch\nutch-1.2 目錄下建立檔案夾urls 並在其下面建立檔案 urls\nutch.txt,並在nutch.txt中寫入要抽取的網站地址如: 將要抓取的網站地址輸入,比如http://www.my400800.cn/(注意最後的/一定要有)
- 開啟conf\crawl-urlfilter.txt檔案,將
# accept hosts in MY.DOMAIN.NAME
+^http://([a-z0-9]*\.)*MY.DOMAIN.NAME/改為
# accept hosts in MY.DOMAIN.NAME
+^http://([a-z0-9]*\.)*my400800.cn/(這裡也要有/呦)
- 開啟nutch/conf/nutch-site.xml檔案,修改<configuration></configuration>為:
<configuration>
<property>
<name>http.agent.name</name>
<value>HD nutch agent</value>
</property>
<property>
<name>http.agent.version</name>
<value>1.2</value>
</property>
</configuration>
- 開始爬(從上面啟動的【Cygwin dos視窗輸入如下命令】)
/cygdrive/d/nutch/nutch-1.2/bin/nutch crawl -dir localdownweb -depth 1 -threads 1 topN 10 urls>&/crygdrive/d/nutch/nutch-1.2/logs/log1.log
crawl:通知nutch.jar,執行crawl的main方法。
urls:存放需要爬行的url.txt檔案的目錄
-dir sina 爬行後檔案儲存的位置
-depth 2:爬行次數,或者成為深度,不過還是覺得次數更貼切,建議測試時改為1。
-threads 指定並發的進程 這是設定為 4
-topN :一個網站儲存的最大頁面數。
會出現如下錯誤在上面的目錄建立[urls]目錄,在目錄裡面建立 【nutch.txt】,內容為:想抓取的url地址,格式為:http://www.my400800.cn/(後面的反斜線不要忘記呀)
再次運行上面的命令出現如下視窗,啟動成功。