歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> 關於Unix >> Nutch安裝筆記

Nutch安裝筆記

日期:2017/3/6 15:26:36   编辑:關於Unix
在RH9+J2EE5.0+TOMCAT5.0.28,使用Nutch-0.6完成了企業內部網簡單測試,並記錄遇到的問題和解決方法 今天的天氣真是熱死了!沒辦法,呆在家裡吧,有空調涼快些。於是想到了研究Nutch 這是一個 開源 的搜索引擎,現在已經列入Apache的Lucene的子項目了。最新版 在RH9+J2EE5.0+TOMCAT5.0.28,使用Nutch-0.6完成了企業內部網簡單測試,並記錄遇到的問題和解決方法

今天的天氣真是熱死了!沒辦法,呆在家裡吧,有空調涼快些。於是想到了研究Nutch
這是一個開源的搜索引擎,現在已經列入Apache的Lucene的子項目了。最新版本是0.6(2005年1月)。以前我安裝過,沒有成功。這次終於成功了,做了簡單測試

參考文章來源:
Nutch文檔
作者Fenng: http://www.dbanotes.net/archives/2005/01/nutch_aee.html
Apache Nutch Wiki: http://wiki.apache.org/nutch/GettingNutchRunningWithResin

一 系統要求
下面是Nutch文檔的說明
1.Java 1.4.x, either from Sun or IBM on Linux is preferred. Set NUTCH_JAVA_HOME to the root of your JVM installation.
2.Apache's Tomcat 4.x.
3.On Win32, cygwin, for shell support. (If you plan to use CVS on Win32, be sure to select the cvs and openssh packages when you install, in the "Devel" and "Net" categories, respectively.)
4.Up to a gigabyte of free disk space, a high-speed connection, and an hour or so.
關於第一項,我也不清楚是說JAVA的J2SE版本還是J2EE版本。上一次我用J2SE的時候就沒有成功。但這並不能確定一定和JAVA版本有關。這裡我使用的是J2EE5.0(前幾天研究什麼東西剛下的,順便拿來用,呵呵)JAVA在LINUX的安裝可以參考我以前的BLOG。然後就是設定系統環境變量NUTCH_JAVA_HOME了。
#vi /etc/profile

加入下面內容:
NUTCH_JAVA_HOME="/usr/local/j2ee1.5/jdk"
EXPORT最後加入 NUTCH_JAVA_HOME

第二項安裝TOMCAT很簡單,下載binary包解壓即可。我用的是tomcat5.0.28
第三項我們用的是Linux不用管Windows的設置
第四項預留足夠的硬盤空間(G字節級別)。我只搜我的小站,估計也占用不了多少空間^_^

二 安裝使用Nutch
1.安裝
下載Nutch-0.6.tar.gz
#tar zxvf Nutch-0.6.tar.gz
#mv Nutch-0.6 /usr/local/nutch
測試Nutch
#/usr/local/nutch/bin/nutch
出現幾行提示信息,說明安裝成功

2.抓取頁面
我只做了內部網(Intranet)的測試
在 nutch 目錄中創建一個包含該網站頂級網址的文件 urls ,包含如下內容:
http://10.40.x.x/(我的主機的內網網址,這裡用我以前架的LAMP測試)

#cd /usr/local/nutch
#touch urls
#vi urls
加入 http://10.40.x.x/ 保存退出

然後編輯conf/crawl-urlfilter.txt 文件,設定過濾信息
+^http://10.40.x.x/
保存退出以後開始抓取了!

#bin/nutch crawl urls -dir lystudio.test -depth 2 -threads 4 >& crawl.log

depth 參數指爬行的深度,這裡處於測試的目的,選擇深度為 2 ;
threads 參數指定並發的進程 這是設定為 4
只過了2分鐘,爬完了(站太小了……)

之後配置 Tomcat (我的 tomcat 安裝在 /usr/local/tomcat5) ,

# rm -rf /usr/local/tomcat5/webapps/ROOT*
# cp nutch-0.6.war /usr/local/tomcat5/webapps/ROOT.war
# cd /usr/local/tomcat5/webapps/
# jar xvf ROOT.war
# ../bin/catalina.sh start
浏覽器中輸入 http://localhost:8080 查看結果(遠程查看需要將 localhost 換成相應的IP):

出現了頁面!不過測試發現不能正常搜索頁面,並出現以下錯誤:

500 Servlet Exception
java.lang.NullPointerException
at net.nutch.searcher.NutchBean.init(NutchBean.java:82)
.....

去Nutch Wiki找資料,據說是segment文件夾位置的問題。默認的是./segment所以我們應該修改為實際的地址。我的是
/usr/local/nutch/lystudio.test/segment
解決方法是這樣描述的:
找到tomcat的ROOT目錄下的一個文件:nutch-site.xml

#vi /usr/local/tomcat5/webapps/ROOT/WEB-INF/classes/nutch-site.xml

修改成下面樣式:

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="nutch-conf.xsl"?>

<!-- Put site-specific property overrides in this file. -->

<nutch-conf>
<property>
<name>searcher.dir</name>
<value>/usr/local/nutch/lystudio.test</value>
<description>My path to nutch's searcher dir.</description>
</property>
</nutch-conf>

然後重啟TOMCAT,終於可以搜索了:

至此我的測試已經完成。關於中文搜索,以後有時間再做(可以發現,上面頁面的中文在Firefox1.0.5下有問題,調整頁面編碼也沒有起作用,應該是Nutch配置中修改吧)。
說明:本人對搜索引擎沒有任何研究,這裡只是體驗一次搜索的樂趣而已^_^

Copyright © Linux教程網 All Rights Reserved