在https://svn.apache.org/repos/asf/nutch/branches/branch-2.2.1/网址里面可以找到Nutch2.2.1版本的资源文件。
1. 在MyEclipse中安装nutch2.2.1的前提
(1)系统中已经安装并且配置好java环境(jdk最好是1.7.0.51版本的)
(2)MyEclipse中已安装插件:Svneclipse、ivyDE
2. 本机环境
(1)win7-32系统
(2)jdk1.7.0.51
3. 将nutch2.2.1通过MyEclipse检出到本地
(1)通过MyEclipse的svn插件将nutch关联到本地
(2)点击资源库,检出项目
(3)选择作为新项目检出
(4)选择以java Project项目方式检出
(5)选择新版的JDK,并命名工程为nutch2.2.1
(6)检出项目
(7)至此项目就同步到本地了(但是会报错,没有关系,下面就进行项目的配置)
4. 配置项目
(1)右键项目——》Build Path——》Configure Build Path... ——》Source :
1. 删除nutch-2.2.1/src文件
2.Add Folder,添加项目中的src/bin,src/java,src/test,src/testresources以及src/plugin文件下面除了1. feed 2. parse-swf 3. parse-zip 4.parse-ext
文件下的所有的java和test文件夹(因 为:http://wiki.apache.org/nutch/Nutch2Plugins)
3.Build Path——》Configure Build Path...——》Libraries Add Class Folder(添加项目中的conf文件夹 并置顶)
4. 项目中,找到build.xml,右键——》Run As——》Ant Build , 等待完成
5.引入build文件夹下所有的jar包,导入之后还缺少4个jar包,自行下载jar包,若下载不了,请联系我。
6.引入这四个jar包以后项目将没有错误了,若还有错误,尝试请查看你的环境是否正确,比如JDK的版本。
7.刷新项目,修改conf/nutch-default.xml文件 找到plugin.folders项修改其值
8.设置存储方式,找到conf/gora.properties文件,注视里面的全部选项(里面的配置很多,而且可以连接数据库),现在以AvroStore为例
gora.avrostore.codec.type=BINARY||JSON
gora.avrostore.output.path=file:///tmp/gora.avrostore.test.output
图如下
9.找到conf/nutch-site.xml文件,添加如下内容
<configuration>
<property>
<name>http.agent.name</name>
<value>My Nutch Spider</value>
</property>
<property>
<name>storage.data.store.class</name>
<value>org.apache.gora.avro.store.DataFileAvroStore</value>
</property>
</configuration>
10.在项目中添加urls文件夹,在文件夹中添加seed.txt文件,在文件中输入想要抓取的链接即可,然后配置参数(主类:org.apache.nutch.crawl.InjectorJob)
E:/apache-nutch-1.8/urls/url.txt
-Dhadoop.log.dir=logs -Dhadoop.log.file=hadoop.log
图如下
11.点击run,运行后,hadoop会产生解文件夹权限访问问题
决方法是,修改/hadoop-1.0.2/src/core/org/apache/hadoop/fs/FileUtil.java里面的checkReturnValue,注释掉即可。
当然最简单的办法是在网上找一个修改过的包,替换一下FileUtil.class。(不能解决请联系我吧)
12.替换以后,再点击run,则成功了
5 总结
祝你好运。如若不清楚,可邮件联系我。