Nutch1.0配置笔记

 
 
一、简介 
  Nutch是一个开源的Web搜索引擎。 
 
       主要分为两个部分:爬虫crawler和查询searcher,两者之间的接口是索引。 
 
 
二、需要的软件
JDK1.6 
 
Tomcat6.0 
 
cygwin 
 
nutch1.0
 
三、安装与配置
1. JDK 
下载地址:http://www.sun.com 
 
安装目录:C:\Java\jdk1.6.0_14 
 
修改环境变量:
 
JAVA_HOME= C:\Java\jdk1.6.0_14 
 
CLASSPATH= C:\Java\jdk1.6.0_14\lib\dt.jar; C:\Java\jdk1.6.0_14\lib\tool.jar 
 
PATH= %JAVA_HOME%\bin
 
测试:
 
Java -version 
 
2. Tomcat6.0
下载地址: 
 
http://tomcat.apache.org/download-60.cgi?Preferred=http%3A%2F%2Fapache.freelamp.com
 
安装目录:C:\tomcat6 
 
安装测试: 
 
        a)  启动tomcat:在DOS下,cd C:\tomcat6\bin\startup.bat 
 
        b)  浏览器地址栏输入:
 
     http://localhost:8080/
 
             出现tomcat主页则成功 
 
更改C:\tomcat6\conf \tomcat-users.xml内容 
 
<tomcat-users> 
 
  <role rolename="manager"/> 
 
  <user username="tomcat" password="tomcat" roles="manager"/> 
 
</tomcat-users> 
 
3. Cygwin 
下载地址:
 
http://www.cygwin.cn/
 
使用原因: 
 
   运行Nutch自带的脚本命令需要Linux的环境,使用cygwin来模拟该环境。cygwin是在windows平台上运行的unix模拟环境。 
 
安装目录:C:\cygwin 
 
           注意:在选择下载站点需要输入如下网址,并在最后选择本地磁盘安装: 
 
                    http://www.cygwin.cn/pub/
 
测试:
 
进入cygwin
 
4. Nutch 
下载地址:
 
http://www.apache.org/dyn/closer.cgi/lucene/nutch/ 
 
版本:nutch-1.0 
 
解压后到:C:\nutch-1.0 
 
设置Nutch的环境变量: 
 
NUTCH_JAVA_HOME= C:\Java\jdk1.6.0_14
 
修改环境变量PATH :
 
PATH=%JAVA_HOME%\bin; %NUTCH_JAVA_HOME%
 
在C:\nutch-1.0下建立url.txt文件来制定爬去列表 
 
在txt文件中写入需要爬取的网站地址http://dblp.lab/
 
测试: 
 
开启Cygwin 
 
cd cygdriver/c/nutch-1.0 
 
bin/nutch
 
若出现若干命令,则说明Nutch配置成功 
 
四、抓取网页数据 
1. 指定爬虫规则
修改Nutch-1.0/conf/crawl-urlfilter.txt 
# accept hosts in MY.DOMAIN.NAME 
 
+^http://dblp.lab/
 
改成
 
+^http://litclive.blog.51cto.com/
 
修改Nutch-1.0/conf/nutch-site.xml 
<configuration> 
 
  <property> 
 
  <name>http.agent.name</name> 
 
  <value>my nutch agent</value> 
 
  </property> 
 
  <property> 
 
  <name>http.agent.version</name> 
 
  <value>1.0</value> 
 
  </property> 
 
</configuration> 
 
2. 开始爬取 
3. 打开Cygwin 
4. 在命令行输入
cd /cygdrive/c/nutch-1.0
 
5. 执行命令
bin/nutch crawl url.txt -dir crawled -depth 3 - threads 4 >&crawl.log 
 
   其中:dir是指定爬取内容所存放的目录,depth表示以要爬取网站顶级网址为起点的爬行深度,threads指定并发的线程数 
 
6. 爬取中......(采集网页并建立索引) 
7. 结束后在Nutch目录下产生爬取内容的文件夹crawled和日志文件夹logs 
五、部署Web前端 
1. 将nutch-1.0.war拷贝到webapps目录下 
2. 通过浏览器访问如下网址,war包会自解压
http://localhost:8080/nutch-1.0/
 
3. 修改nutch的web配置 
       更改c:\tomcat6\webapps\nutch-1.0\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>C:\nutch-1.0\crawled</value> 
 
</property> 
 
</nutch-conf> 
 
六、解决中文乱码问题 
         修改文件C:\tomcat6\conf\server.xml 
 
<Connector port="8080" maxThreads="150" minSpareThreads="25" 
 
maxSpareThreads="75" enableLookups="false" redirectPort="8443" 
 
acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" 
 
URIEncoding="UTF-8" useBodyEncodingForURI="true" protocol="HTTP/1.1" /> 
 
  
七、搭建完成 
1. 启动Tomcat 
2. 通过浏览器访问
http://localhost:8080/nutch-1.0/