前言:作者(守望者MS)在实际搭建并开发Nutch的过程中参阅很多中文资料,但内容并不详尽且有错误,于是在此记录个人实战过程,纠正一些文章错误,以详细的过程展现一次简单的二次开发流程,为初学者降低门槛。但不能保证完全没有错误,如有发现希望大家指正。
目录:
1.Nutch1.2二次开发详细攻略(一)【图文】------Windows平台下Cygwin环境的搭建
2.Nutch1.2二次开发详细攻略(二)【图文】------Windows平台下Nutch1.2的搭建
3.Nutch1.2二次开发详细攻略(三)【图文】------Nutch1.2二次开发(关于界面修改)
4.Nutch1.2二次开发详细攻略(四)【图文】------Nutch1.2二次开发(关于中文分词)
本文出自 “守望者MS” 博客,谢绝转载!
一、开发环境介绍(以我个人为例):
个人开发端:windows Server 2003 + Cygwin + Eclipse3.2
二、具体步骤:
<1>.下载nutch1.2(http://labs.renren.com/apache-mirror//nutch/)
下载完成后解压到指定的文件夹。
在开始测试Nutch是否搭建成功之前,请先确保本机安装了JDK,并且设置了正确的JAVA_HOME环境变量,注意:环境变量的设置中一定要将JDK的安装根目录设置为JAVA_HOME,然后再设置CLASSPATH,PATH,即:%JAVA_HOME%/bin,%JAVA_HOME%/lib,千万不要设置为绝对目录,否则在执行Nutch命令时会出现错误
<2>.开始配置Nutch:
第一:修改nutch目录下的conf子目录下的两个文件:
在nutch-site.xml的configuration下增加一个http.agent.name节点(如不修改则不能抓取)
<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>
在crawl-urlfilter.txt中将如下语句改成需要的形式:
# accept hosts in MY.DOMAIN.NAME
+^http://([a-z0-9]*\.)*com.cn/
+^http://([a-z0-9]*\.)*cn/
+^http://([a-z0-9]*\.)*com/注:“+”号前不要有空格
第二:执行抓取操作
(1).在Nutch根目录下新建一个url.txt文件,其每一行输入你想要爬去的网站域名。
例如:
注:以行为单位,每行输入一个域名,且域名格式遵从上述例子,最后要加"/"
(2).打开cygwin,执行命令行:
注:作者的Nutch放置在G:/nutch
命令行:cd g:
命令行: cd nutch
命令行: bin/crawl url.txt –dir localweb –depth 3 –threads 4
注:该命令行中的参数请自行学习参考,这里不多做解释。
此时,Nutch就开始执行抓取操作了,配置成功。
经过以上的步骤,后端的操作基本完毕,此时可以在cygwin中到nutch根目录下
执行下面命令进行简单的查询测试:
bin/nutch org.apache.nutch.searcher.NutchBean 关键字
<3>Tomcat的配置
(1).将tomcat安装目录下的\webapps下的ROOT删除;
(2).将nutch目录的nutch-1.2.war复制到tomcat\webapps下,并将其改名为ROOT.war;
如果Tomcat正在运行,那么ROOT.war会自动生成ROOT文件夹;如果没有运行,那么启动Tomcat之后,会自动生成ROOT文件夹。
(3.)打开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>g:/nutch/localweb</value>
</property>
</nutch-conf>
其中的"<value>g:/nutch/localweb</value>"部分,应根据自己的设置进行相应修改,是nutch抓取结果存放目录。
启动Tomcat,打开浏览器在地址栏中输入:http://localhost:8080,即可看见nutch的搜索页面。
至此,Nutch的简单配置完毕,接下来说说如何在eclipse中导入并调试Nutch,