Nutch1.2+Windows环境搭建
Nutch1.2+Windows环境搭建
Nutch介绍
简单介绍
Nutch是一个开源的、Java实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具
主要特点
Nutch 致力于让每个人能很容易, 同时花费很少就可以配置世界一流的Web搜索引擎. 为了完成这一宏伟的目标, Nutch必须能够做到:
* 每个月取几十亿网页
* 为这些网页维护一个索引
* 对索引文件进行每秒上千次的搜索
* 提供高质量的搜索结果
版本说明
当前最高版本为:apache-nutch-1.2-bin.zip
下载地址 : http://apache.etoak.com//nutch/apache-nutch-1.2-bin.zip
源码地址 :http://apache.etoak.com//nutch/apache-nutch-1.2-src.zip
安装前提
cygwin 在windows 环境中 安装成功
安装说明
解压到 apache-nutch-1.2-bin.zip 到 C:\cygwin\目录下
运行cygwin快捷方式 如下图cd进入nutch-1.2/bin下面
打开 修改nutch-1.2/conf/nutch-site.xml
修改nutch-1.2/conf/nutch-site.xml
<configuration>
<property>
<name>http.agent.name</name>
<value>skean</value>
<description></description>
</property>
<property>
<name>http.agent.description</name>
<value></value>
<description></description>
</property>
<property>
<name>http.agent.url</name>
<value></value>
<description></description>
</property>
<property>
<name>http.agent.email</name>
<value></value>
<description></description>
</property>
</configuration>
注:http.agent.name段下的skean值一定要给出(当然值是随意的)
有兴趣的可以查看nutch-1.2/conf/nutch-default.xml这个文件,里面也有http.agent.name段,默认值为空,所以才要我们强制指明
修改nutch-1.2/conf/crawl-urlfilter.txt
倒数四行的代码修改成如下(只是修改了+^http://([a-z0-9]*\.)*163.com/)指 明我们抓取的网站是http://www.163.com/下的网站。
# accept hosts in MY.DOMAIN.NAME
+^http://([a-z0-9]*\.)*163.com/
# skip everything else
在nutch-1.2/bin/下建立文件夹urls,然后在urls下面建立文件url.txt 内容如下
http://www.163.com/
配置JAVAHOME 环境变量
在cygwin中进入nutch-1.2/bin目录 下 执行如下命令
export JAVA_HOME="/cygdrive/C/Program Files/Java/jdk1.6.0_10"
执行抓取命令 在cygwin中进入nutch-1.2/bin目录
./nutch crawl urls -dir crawl -depth 5 -threads 4 -topN 50
出现如下界面:
注:urls就是你之前建立的文件夹
-dir crawl就是创建crawl文件夹来存储抓取的数据
-depth 5 就是抓取的深度
-threads 4 就是执行的线程数
-topN 50 就是每层抓取数目
这样你的抓取数据都在crawl中了
可以执行
./nutch readdb sina/crawldb/ -stats
注:查看抓取信息。
把nutch-1.2文件夹下的nutch-1.2.war拷到tomcat的webapps文件下
配置nutch-1.2/WEB-INF/classes/nutch-site.xml 修改后如下
<configuration>
<property>
<name>searcher.dir</name>
<value>C:/cygwin/nutch-1.2/bin/crawl</value>
</property>
</configuration>
注:C:/cygwin/nutch-1.2/bin/crawl这个路径就是你之前抓取数据的存放路径。
中文乱码问题
配置tomcat的conf文件夹下的server.xml
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeo