下载Nutch 1.0。(Require JDK 1.5 or later release)
1. linux环境下解压到本地目录,手动添加
日志文件夹----/log/log.txt
URL文件夹----/urls/url.txt
Index文件夹-----/indexs
2. 修改nutch-1.0"conf"nutch-site.xml文件
在<configuration></configuration>中添加
<property><name></name><value></value></property>
不修改也无所谓,这里的设置,是因为nutch遵守了robots协议,在获取response时,把自己的相关信息提交给被爬行的网站,以供识别。
3. 修改nutch-1.0"conf"crawl-urlfilter.txt文件
把MY.DOMAIN.NAME字符替换为url.txt内的域名(比如我改成了“+^http://([a-z0-9]*".)*163.com/”,其实更简单点,直接删除MY.DOMAIN.NAME这几个字就可以了,也就是说,只保存+^http://([a-z0-9]*".)*这几个字就可以了,表示所有http的网站都同意爬行)。
4. 确保JAVA环境变量path正确;
5. 在Linux Shell控制台下运行nutch 命令行:
Sudo bin/nutch crawl urls -dir indexs -depth 2 -threads 4 -topN 1000 >&LOGS/log.txt
这里-dir表示存储的目录,-depth表示网址爬的深度,最后是指明日志文件
运行结束后,你可以打开日志文件查看爬虫运行的详细过程。
6. 部署搜索工程--在tomcat上运行Nutch
把nutch-1.0.war拷贝到Tomcat""webapps"下面,修改nutch-1.0.war中nutch-1.0/WEB-INF/classes/nutch-site.xml 文件,在<configuration></configuration>中添加
<property>
<name>search.dir</name>
<value>/indexs</value>(在windows下也输入绝对路径)
</property>
7. 为了支持中文的搜索,修改Tomcat"conf"server.xml
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"/>
添加属性 URIEncoding="UTF-8"
useBodyEncodingForURI="true"
8. 启动tomcat ,输入http://localhost:8080/nutch-1.0/ 进行搜索。