apache下的nutch是个好东西,但我用0.9版本时,老是说job faild,所以只能换成0.8.1版本了
1 安装cgywin,这东西可以模拟unix的shell
2 把下载的东西用tar xvf xxx.tar.gz解压开.
3 在Nutch的安装目录中建立目录urls,在下面再建立一个名为url.txt的文本文件,文件中写入要抓取网站的顶级网址,即要抓取的起始页。
http://www.cnblogs.com/jackyrong
(2)编辑conf/crawl-urlfilter.txt文件,修改MY.DOMAIN.NAME部分:
# accept hosts in MY.DOMAIN.NAME
+^http://www.cnblogs.com/jackyrong
3、运行Crawl命令抓取网站内容
bin/nutch crawl urls -dir crawled -depth 3 -threads 4 >& crawl.log
等待大约2分多钟后,程序运行结束。读者会发现在目录下被创建了一个名为crawled的文件夹,同时还生成一个名为crawl.log的日志文件。利用这一日志文件,我们可以分析可能遇到的任何错误。另外,在上述命令的参数中,dir指定抓取内容所存放的目录,depth表示以要抓取网站顶级网址为起点的爬行深度,threads指定并发的线程数。
4、使用Tomcat进行搜索测试
(1)nutch-0.8.1.war复制到tomcat\webapps下,
(2)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:\\cygwin\\home\\nutch-0.8.1\\crawl</value>
</property>
</nutch-conf>
(4)启动Tomcat,打开浏览器在地址栏中输入:http://localhost:8080/nutch-0.8.1,
5 解决中文乱码问题
tomcat 的server.xml中,修改成
<Connector port="8085" protocol="HTTP/1.1"
connectionTimeout="20000"
URIEncoding="UTF-8" redirectPort="8443" />