myeclipse8.5搭建nutch1.2

十一期间打算学些nutch+lucene+solr方面的知识,现将这两天主要学的myeclipse8.5+nutch1.2总结如下,当然也可以选择nutch1.3,这个是最新的,但是网上关于1.3版本的可参考资料太少了,最后也没成功,所以只能退而求其次,幸好搭建成功了。言归正传

1、资源要备齐:cygwin,myeclipse8.5,nutch发布版本文件nutch的源文件,即nutch1.2-src.zip,可以在apache官网上很轻易的下载到,至于myeclipse没有什么要求,只不过myeclipse8.5这个版本现在是比较新而且稳定的,9.x有点耗资源大,故没用过。再就是cygwin了,因为本身nutch是基于linux应用的,需要一些linux的硬性支持,在windows中需要安装类linux环境,如果没有这个环境的话,运行nutch的crawl等命令时,会现在IOException-job failed,当然如果是linux下的话,就无需此cygwin了。

2、进入project explorer-->右击新建java project-->选择已存在的项目(若选第一个的话有点麻烦,不如这样简单,毕竟是初学,快速搭建为重)-->点击next-->两件事要做(在output folder处改为bin/one_dir自定义一个文件夹,在最后一标签处将conf件挪到最上方,但无需选中,像这两个操作,不会影响运行结果,但是会显示的很麻烦,任为初学者,强烈要求如此做。),就1.2版本来说,这样的话就没什么问题,至少不会出现"错"号什么的。但是1.3版本就不一样了,这也是我用1.2的原因了,1.3配置比较麻烦,咱还是先捡个容易搞定吧,呵呵。

3、从nutch1.2发布版中找到nutch1.2.jar和nutch1.2.job两个文件拷贝至你自己工作目录,也就是你的源文件所在的根目录中,否则会报job failed异常。

4、找到conf下的nutch-default.xml中的plugins.folder属性,将plugins改为./src/plugin,注意此处的plugin不是plugins,很多因为粗心于些,造成很不必要的时间浪费,我就是其中的一员啊。

5、找到conf下的nutch-site.xml中的configuration标签,添加一个property,即

         <property><name>http.agent.name</name><value>随便一个你命名的名字</value></property>,此property为必配属性,否则会现异常,具体名称我给忘了,配上就没问题了。

6、右击项目的根目录,选择run as-->java appliaction,经过搜索会出现很多个application可以run,你选择org.apache.nutch.crawl.Crawl就可以了,之后会提示一个<usage>,然后右击你的根目录,选择run as -->configuration,选中其中的argument,输入参数:

urls -dir dir_name -depth depth_name -topN number -threads thread_number,解释一下,

urls:是你要抓取的网页的根目录,可以是一个txt也可以是一个目录文件

dir_name:是你的抓取完的数据放到的位置

depth:抓取的网页的深度层数

topN:每层抓取的链接个数

threads:用多少个线程并发的抓取

7、如果完全按照上面的部署还出现了类似job failed的错误,就可能是jvm memory不够使用造成的了,可以在上边提到的argument的下面的vm argument配置中加上-Xms1000m -Xmx1000m就可以了,此话意思是最大可使用1000m内存。

到此为止,全部介绍完毕,如果还有什么问题的话,欢迎留言探讨。

你可能感兴趣的:(java,Nutch,应用)