Nutch1.2+tomcat7windows环境搭建

来源:互联网 发布:淘宝卖家不能开通花呗 编辑:程序博客网 时间:2024/05/11 06:00
安装前提
    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文件下,重启tomcat,nutch-1.2.war会自动解压。

配置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"
               connectionTimeout="20000"
               redirectPort="8443" URIEncoding="UTF-8" useBodyEncodingForURI="true"/>



注:找到这一段,关键是添加URIEncoding="UTF-8" useBodyEncodingForURI="true"。

运行 tomcat 打开浏览器 http://localhost:8080/nutch-1.2/  大功告成


cygwin编码问题的临时解决办法:

直接输入,export LANG="en_US.GBK"export LC_ALL="en_US.GBK",但下次重新启动cygwin的时候会又变回去。

原创粉丝点击