(搜索引擎)Windows7下部署 Nutch-1.0
1.jdk安装和配置
安装:
下载后,jdk1.6安装到默认目录下(C:\Program Files\Java)
配置:
<1>JAVA_HOME变量配置
新建“系统变量”—》变量名—"JAVA_HOME";变量值—“C:\Program Files\Java\jdk1.6.0_10”
说明:JAVA_HOME指向jdk的安装目录,Eclipse/NetBeans/Tomcat等软件就是通过搜索JAVA_HOME变量来找到并使用安装好的jdk。
方便引用,归一原则
<2>PATH变量配置
编辑“系统变量”的变量“Path”,添加jdk的bin目录 “C:\Program Files\Java\jdk1.6.0_10\bin”和“C:\Program Files\Java\jre6\bin”
或者“%JAVA_HOME%\bin”和“%JAVA_HOME%\bin”
说明:在系统的任何地方都可以运行Java程序、执行Java、javac工具,指定命令搜索路径。建议把 JDK bin 的路径放在原有 path 的最前面,这样就会把默认的Windows系统自带的jre取代
<3>CLASSPATH变量配置
新建“系统变量”—》变量名—“CLASSPATH”;变量值— “.;C:\Program Files\Java\jdk1.6.0_10\lib\dt.jar;C:\Program Files\Java\jdk1.6.0_10\lib\tools.jar;”
或者 “.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;”
说明:第一个“.”代表当前目录下,剩下的变量为常用Java类库,要用分号隔开
CLASSPATH作用为指定类搜索路径,JVM就是通过CLASSPTH来寻找类,方便引用已有类包
2.tomcat安装和配置
tomcat5.5安装,安装到d:tomcat\下完整路径为“D:\tomcat\Tomcat5.5”
在5.5下有默认的启动工具,选择“start”即可
说明:目前部署Nutch最好是使用tomcat旧版本比如5.5等,6.x的tomcat在有些方面可能会出错。
在MyEclipse网络开发中,部署tomcat需要在”Windows“—》”Myeclipse“—》“Server”中选择“tomcat5.x”—》选择tomcat安装的根目录即可—》选择“Enable”。
另外,部署到tomcat上的工程放在webapps下
启动、关闭tomcat:
6.x版本的tomcat不再有Monitor tomcat,用户可以自己在tomcat\bin目录下找到“startup.bat”和“shutdown.bat”,更改这两个文件,在第一行前面加入如下两行:
SET JAVA_HOME=JDK目录
SET CATALINA_HOME=前面解压后Tomcat的目录或者%cd%
这样就可以直接双击启动或者停止tomcat的服务
配置用户:
在tomcat\conf目录下,找到tomcat-users.xml 在<tomcat-users>*</tomcat-users>加入如下语句:
<role rolename="manager"/>
<role rolename="admin"/>
<user username="admin" password="admin" roles="admin,manager"/>
3.Cygwin安装(最好本地安装—local install)
<1>下载:
下载安装程序: http://www.cygwin.com/setup.exe
运行,选择下载方式:“下载并安装”、“下载不安装”、“从本地安装”—》选择“下载不安装”,这样免去断网就会中断的痛苦
国内选择这个地方下载就行 http://www.cygwin.cn/pub/ (推荐去网盘直接下载,这样网速比较稳定:Cygwin下载: part1+part2+part3+part4)---我下载后分块传到115的。。。
<2>安装:
选择“local install”—》选择安装路径—》选择本地文件路径—》
4.Nutch本地部署(爬取数据测试)
<1>下载:
http://lucene.apache.org/nutch/
<2>部署:
解压放到D盘根目录下,更改解压后的文件夹名nutch-1.0为nutch(方便使用),这样路径为“D:\nutch”
新建URL:在nutch根目录下新建文件url_xx,比如url_taobao,不用加后缀,在文件中加入网站路径“http://www.taobao.com/”(记住不要忘掉后缀"/")
新建淘宝数据文件夹:在nutch根目录下新建“taobao”文件夹,用于存放爬取的数据
说明:目录可以更改
存放logs:
配置文件:更改D:\nutch\conf\crawl-urlfilter.txt中“# accept hosts in MY.DOMAIN.NAME”下加入目标网址“http://www.taobao.com/”替换”MY.DOMAIN.NAME“,不过在这里可以根据需要加上一些正则表达式
说明:
更改D:\nutch\conf\nutch-site.xml,在<configuration></configuration>之间加入以下内容:
<property>
<name>http.agent.name</name>
<value>nutch-1.0</value>
<description></description>
</property>
<property>
<name>http.agent.description</name>
<value>my agent</value>
<description></description>
</property>
<property>
<name>http.agent.url</name>
<value>http://www.cnblogs.com</value>
<description></description>
</property>
<property>
<name>http.agent.email</name>
<value>jiayouchuang@qq.com</value>
<description></description>
</property>
说明:一些协议规定
进入到Cygwin的命令行界面,进入到D:\nutch目录下,输入命令“bin/nutch crawl url_taobao -dir taobao -depth 2 -threads 4”,开始爬取
说明:命令也可以更改,根据需要
crawl:后面跟着搜索目标的网址,通知nutch.jar,执行crawl的main方法
dir:后面跟着存放数据的文件夹
depth:后面跟着的数字表示搜索的深度
threads:后面再跟着的数字表示并发的线程
5.Nutch部署到tomcat(网络数据获取)
部署到tomcat:
把nutch目录下nutch-1.0.war放到tomcat\webapps下,然后在浏览器中输入“http://localhost:8080/nutch-1.0”,这样webapps下的war会自动解压为nutch-1.0文件夹
更改配置:tomcat下webapps\nutch-1.0\WEB-INF\classes下的nutch-site.xml中<configuration></configuration>中加入已搜索获取的数据文件夹目录:
<property>
<name>searcher.dir</name>
<value>D:\\data\\taobao</value>
</property>
支持中文搜索:更改tomcat\conf\server.xml中端口号为8080的连接的属性为:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8" useBodyEncodingForURI="true"
/>
开始爬取数据:
在地址栏中输入:”http://localhost:8080/nutch-1.0“,就可以开始搜索数据了