设为首页 收藏本站
查看: 703|回复: 0

[经验分享] 集成nutch和solr,并加入中文分词的过程

[复制链接]

尚未签到

发表于 2016-12-15 10:54:02 | 显示全部楼层 |阅读模式

  • 准备工作
  • 安装nutch
  • 安装solr
  • 加入中文分词
  • 运行
  1.准备工作
  首先安装好jdk和tomcat,我安装的是sun-java6-jdk,注意tomcat的用户最好改成正在使用的用户(有时候在当前用户修改环境变量时,tomcat如果是root用户,可能不会载入该环境变量)
  2.安装nutch
  我下载的是src版本,下载后解压,进入NUTCH目录,并用ant命令编译.
  建立urls入口地址:mkdir urls; echo "http://***"> seed.txt
  加入过滤网址:vim conf/crawl-urlfilter.txt,写入过滤规则,注意每一行开头不能有空格,否则在测试时会报异常或者错误 (该目录下的regex-urlfilter.txt也有类似的作用,但是如何设置在有需要时再研究)
  测试 "Usage: bin/nutch Crawl <urlDir> [-dir d] [-threads n] [-depth i] [-topN N]  [-solr solrURL]"
  Crawl命令相当于是inject, generate,fecth,parse,update,invertlinks等命令的组合使用,具体见源码.使用细节见scholr_search/books/nutch.pdf
  3.安装solr
  下载solr.1.4.1,解压
  进入solr目录(我解压在/test-solr位置)
  测试example是否能正常运行: cd example ;  java -jar start.jar
  将$NUTCH_DIR/conf/schema.xml拷到/test-solr/example/solr/conf/schema.xml,并且将content对应的的stored标记改为true.
  测试的example默认是利用jetty容器,在实际使用时,我改为利用tomcat容器,只需要建立一个映射,给出webapps和solr的主目录:
  cd $TOMCAT_HOME/conf/Catalina/localhost/
  vim test-solr.xml
  """
  test-solr.xml的内容为:
  <Context docBase="/test-solr/example/webapps/solr.war" debug="0" crossContext="true" >
  <Environment name="solr/home" type="java.lang.String" value="/test-solr/example/solr" override="true" /> 
   </Context>
  """
  $TOMCAT_HOME/bin/startup.sh
  """
  然后打开浏览器,输入http://localhost:8080/test-solr/admin
  """
  
4.加入中文分词
  我在建立solr工程时遇到了麻烦,折腾了三天未果,只好利用别人已经写好的paoding-analysis.jar和chinese-tokenizer.jar. 步骤为:
  unzip solr.war
  修改
  test-solr.xml的内容为:
  <Context docBase="/test-solr/example/webapps/solr" debug="0" crossContext="true" >
  <Environment name="solr/home" type="java.lang.String" value="/test-solr/example/solr" override="true" /> 
   </Context>
  """
  解压的缘故是两个jar包需要加入到WEB-INF/lib目录下,这个目录解压后才会看到
  """
  cp $DIR/paoding-analysis.jar /test-solr/example/webapps/solr/WEB-INF/lib/
  cp $DIR/chinese-tokenizer.jar /test-solr/example/webapps/solr/WEB-INF/lib/
  vim /test-solr/example/solr/conf/schema.xml
  """
  将type=text 处改为
  <!--      <tokenizer class="solr.WhitespaceTokenizerFactory"/>-->
             <tokenizer class="com.scholat.ChineseTokenizerFactory" mode="most-words"/>
  有的文章加入对query的修改,是因为将index和query的analyzer分开了,这里省略了analyzer标签,应该默认将两者都修改了。
"""
  在/nutch-1.2目录下运行:
  bin/nutch crawl urls -dir towns -depth 10 -threads 10 -topN 10 -solr http://localhost:8080/test-solr
  (或者分开运行:
  bin/nutch crawl urls -dir towns -depth 10 -threads 10 -topN 10
  bin/nutch solrindex http://localhost:8080/test-solr towns/crawldb/ towns/linkdb/ towns/segments/*)
  整个过程完成,可以通过http://localhost:8080/test-solr/admin 访问.

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-314690-1-1.html 上篇帖子: 利用SOLR搭建企业搜索平台 之四(MultiCore)[转] 下篇帖子: SOLR技术指南系列文章大纲
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表