`
cczlg
  • 浏览: 30719 次
  • 性别: Icon_minigender_1
  • 来自: 长春
文章分类
社区版块
存档分类
最新评论

nutch 搜狗的原型 nutch 配置安装解密!

阅读更多
转自:http://www.itshehui.com/forum.php?mod=viewthread&tid=320&extra=page%3D1要的运行环境:
1、Tomcat(Web服务器),可以下载最新的Tomcat6
2、Jdk(java sdk),下载java6
3、cygwin(在windows下运行unix shell command需要),下载最新版本2.578
4、Nutch,下载0.9版本

把上面的软件下载安装好,还需要设置些环境变量:
JAVA_HOME,设置成你安装的Jdk的路径,比如D:\soft\jdk6
NUTCH_JAVA_HOME,设置成和JAVA_HOME一样
TOMCAT_HOME,设置Tomcat的安装目录,比如D:\Soft\Tomcat60
把这些添加到Path中,%JAVA_HOME%\bin;TOMCAT_HOME%\bin\
CLASSPATH,添加 .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar

接下来还要做下面一些修改:
以下假定Nutch的安装目录是D:\soft\nutch09,Tomcat安装目录D:\Soft\Tomcat60

1、修改nutch下的conf/crawl-urlfilter.txt文件,将# accept hosts in MY.DOMAIN.NAME这行下的
MY.DOMAIN.NAME修改成你想抓取的域名,比如修改成下面这样的:
+^http://([a-z0-9]*\.)*sina.com/,表示要抓取新浪的网页

2、打开Cygwin
    cd d:nutch
     在此目录下执行
    bin/nutch crawl urls -dir crawled -depth 3 -topN 50 >& crawl.log
    对刚才设置的网站网页进行抓取,结果保存在D:\soft\nutch09\crawled文件夹下。

3、在nutch安装目录下新建一个urls目录,在urls目录下新建一个urls.txt文件,在此文件中添加如下这样一行数据:http://www.sina.com/,注意此处添加的url地址必须是在crawl-urlfilter.txt文件指定的域名下的。

4、将D:\soft\nutch09\nutch-0.9.war改名为nutch.war,并复制到D:\Soft\Tomcat60 \webapps目录下

5、进入在Tomcat安装,在conf目录下新建一个nutch.xml文件,并输入以下内容:
<Context path="" debug="5" privileged="true" docBase="nutch"/>

6、启动Tomcat,待nutch.war解压后,打开D:\Soft\Tomcat60\webapps\nutch\WEB-INF \classes\nutch-site.xml文件,将nutch-default.xml文件中的内容粘贴到nutch-site.xml文件中,找到nutch-site文件中的searcher.dir项,将它的value值改成 D:\soft\nutch09\crawled\ ,即刚才抓取结果存放的位置;找到http.agent.name属性,value值改成Nutch;找到http.robots.agents属性,value值改成Nutch,*;找到 http.agent.description属性,value值改成Nutch Search Engineer;找到http.agent.url属性,value值改成http://lucene.apache.org/nutch/bot.html;找到http.agent.email属性,value值改成nutch-agent@lucene.apache.org;找到http.agent.version属性,value值改成Nutch-0.9

7、在D:\Soft\Tomcat60\webapps\nutch\zh\include下面新建header.jsp,把header.html文件中的内容粘贴过来,并在header.jsp最顶端添加以下内容:<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>,打开D:\Soft\Tomcat60\webapps\nutch\search.jsp文件,将<jsp:include page="<%= language + "/include/header.html"%>"/>此行中的header.html改成header.jsp,并将函数
queryfocus()中的代码注释掉

8、修改D:\Soft\Tomcat60\conf\server.xml文件,找到以下段并修改成
<Connector port="8088" protocol="HTTP/1.1" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8" useBodyEncodingForURI="true" />

9、重启Tomcat,浏览器中输入:http://localhost:8088/nutch/,输入你要搜索的内容,就可以看到搜索结果了。


补记:对于要抓取多个网站的页面,以前版本需要分多个步骤才能完成,0.9版本可以不需要那么繁琐了,可以在conf/crawl- urlfilter.txt文件里添加多条网站域名Filter,然后再在urls.txt里添加上对应的域名。命令行就和抓取一个网站的一样就行了;而且要启用hadoop多个Node进行分布式抓取,只需要在相关的配置文件里配置好各个Node的相关信息,Nutch就会自动分布运行了。
0
1
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics