- 准备工作
- 安装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 访问.
分享到:
相关推荐
Nutch+solr + hadoop相关框架搭建教程
本项目是基于Apache Nutch和Solr开发的AJAX页面内容爬取与处理设计源码,主要使用Java进行开发。项目共包含1064个文件,其中Java源代码文件458个,XML配置文件181个,文本文件81个,HTML页面文件56个,JPG图片文件56...
利用Nutch和IKanalyzer构造中文分词搜索引擎
基于Apache Nutch和Solr以及Htmlunit, Selenium WebDriver等组件扩展,实现对于AJAX加载类型页面的完整页面内容爬取、解析、清洗、持久化、全文检索等处理
作为舆情监测系统的一部分,本文的目标是基于Nutch,同时,结合目前最常用中文分词技术,根据不同的中文分词方法,实验并得出不同分词方法在性能以及使用环境上的优缺点,以此为舆情监测系统选择合适的中文分词方法...
nutch应用,nutch中文分词,nutch中文乱码
Nutch中文分词插件的编写与配置,由于Internet的迅猛发展,使得用户查找信息犹如大海捞针,而搜索引擎则能帮用户很好的解决这个问题。 Nutch是用java语言开发的,基于Lucene的完整的网络搜索引擎,并采用插件机制进行...
Nutch 和 Solr (参见 ) 版本 1. 索尔 Solr 用于 8.5.1(或 7.3.1)版本wget http://archive.apache.org/dist/lucene/solr/8.5.1/solr-8.5.1.tgz 2. 阿帕奇纳奇 使用 Apache Nutch 版本 1.17(或 1.16)。 wget ...
自己写的 hadoop nutch solr 环境搭建手册,成功搭建后写的,会有红色标注容易出错的地方
关于nutch的搜索引擎的中文分词的研究,包括了编写与实现
eclipse配置nutch,eclipse配置nutch
用于Nutch的中文分词,效果向单簧管得得好,强烈建议支持这种格式的数据,这是一个里程碑
里面描述了Nutch的基本流程,Nutch与eclipse的结合,Nutch与Solr的结合
1.1 Solr 简介 1.1.1 Solr 的特性 1.1.2 Solr 的目录结构 1.1.3 Solr 与Lucene 关系 1.2 Solr 安装 1.2.1 环境介绍 1.2.2 安装Solr 1.2.3 结合Nutch
基于Nutch的中文分词插件实现,张文龙,刘一伟,中文分词是中文垂直搜索引擎中的一个关键技术,分词的好坏直接影响提取文本的精确度。Nutch是一个开源的Web搜索引擎,它为英文用户�
word分词是一个Java实现的中文分词组件,提供了多种基于词典的分词算法,并利用ngram模型来消除歧义。 能准确识别英文、数字,以及日期、时间等数量词,能识别人名、地名、组织机构名等未登录词。 同时提供了Lucene...
nutch平台的详细搭建过程 配置环境 抓取 建立索引 查看结果
nutch 爬虫数据nutch 爬虫数据nutch 爬虫数据nutch 爬虫数据nutch 爬虫数据nutch 爬虫数据nutch 爬虫数据nutch 爬虫数据nutch 爬虫数据
基于Apache Nutch 1.8和Htmlunit组件,实现对于AJAX加载类型页面的完整页面内容抓取解析。 According to the implementation of Apache Nutch 1.8, we can't get dynamic ...