昨天被 Nutch 2.2.1 整得七葷八素,用一個工作天來證明這個版本完全不合用,晚上回住處,想到或許可以給 1.7 版一個機會?今天初步證實可用。
- 從 Nutch 網站下載 apache-nutch-1.7-bin.tar.gz 回來解開 (~/apache-nutch-1.7/)
- 把 Solr 預設的 core 範例 collection1 複製為 core-nutch
- 把 Nutch 提供的 conf/schema-solr4.xml 覆蓋掉 Solr core-nutch 的 conf/schema.xml
- 將 Solr core-nutch conf/schema.xml 補上一行漏掉的欄位設定
<field name="_version_" type="long" stored="true" indexed="true" multiValued="false"/>
- 重開 Solr,進 Web 管理介面的 Core Admin 新增一個
core-nutch
core,並且不該有這個新增 core 的錯誤訊息。 - 回來 ~/apache-nutch-1.7/ 設定 Nutch。conf/ 底下先編輯 nutch-site.xml 補上 http.agent.name 的 crawler 名稱設定。
- 再編輯 regex-urlfilter.txt 將最後一行
+.
註解掉,改為+^http://my.site.domain.name
只抓我自己的網站 - 再回到 ~/apache-nutch-1.7/,新增一個 urls/ 目錄,裡頭放一個 seed.txt,內容放自己想要抓的種子網址,這裡因為只想要抓自己的網站,所以只要放一行
http://my.site.domain.name/
就好 - 接下來跑
./bin/nutch crawl urls/ -solr http://solr.server.name/solr/core-nutch/ -threads 20 -depth 2 -topN 3
測試能不能抓到網站上層的幾個網頁,到 Solr 管理介面裡頭用查詢功能如果有資料,就是成功了。
留言
在〈Nutch 1.7 + Solr 4.3.1〉中有 3 則留言
我也用的是nutch1.7和solr4.3,不过我没有用tomcat,直接用的是solr自带的管理界面
java -jar start.jar
重開 Solr,Web 管理介面應有多出一個 core-nutch,並且不該有這個新增 core 的錯誤訊息
按照这一步,solr的管理界面并没有多出一个core-nutch
There exists no core with name “core-nutch”
gaorong:
感謝提醒,我修正了相關敘述。