Solr4.10与nutch1.9整合(win7)
1. solr安装及配置
1.1 solr下载地址
http://lucene.apache.org/solr/
1.2环境准备
Tomcat7 + jdk1.7 + solr4.10
注:solr 4.8及以上必须要jdk1.7或者以上才能正确编译 如果使用jdk1.6或者以下的话 使用tomcat运行solr时会报错:
Exception starting filter SolrRequestFilter
java.lang.UnsupportedClassVersionError:org/apache/solr/servlet/SolrDispatchFilter: Unsupported major.minor version 51.0 (unable to load class org.apache.solr.servlet.SolrDispatchFilter)
1.3 solr安装及配置步骤
1.将下载下来的solr压缩包解压,解压后的目录结构如下图:
1.将solr-4.10.0/example/文件夹下的solr文件夹放到你硬盘中的某个位置。如图:E:\solrHome。
2.将solr-4.10.0/example/webapps/目录下的solr.war复制到tomcat/webapp目录下,然后启动tomcat,solr.war会自动解压,webapp目录下将会出现solr目录, 在该目录下找到WEB-INF文件夹,修改文件夹下的web.xml文件,在文件中加入:
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<!—此处为第2步solr文件夹存放位置 -->
<env-entry-value>E:\solrHome \solr</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
3.将solr-4.10.0/example/lib/ext目录下的jar包拷贝到tomcat/webapp/solr/WEB-INF/lib下面。然后重启tomcat,在地址栏里输入http://localhost:8080/solr/admin,将会看到如下界面:
此时说明solr配置成功。
2.nutch安装及配置
2.1 nutch下载地址
下载Nutch1.9版本的二进制包,地址:http://www.apache.org/dyn/closer.cgi/nutch/,选择一个站点进入后,下载1.9目录下的apache-nutch-1.9-bin.zip.
2.2环境准备
cygwin安装(可以去网上参考安装过程)。由于Nutch是在hadop基础上的,而hadoop是在Linux环境下运行的,故在Windows下安装Nutch,必须安装cygwin来模拟Linux。
2.3 nutch安装及配置步骤
1. 将下载下来的apache-nutch-1.9-bin.zip压缩包解压,解压后的目录结构如下图:
2.修改conf目录下的nutch-site.xml.如下:
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>http.agent.name</name>
<value>spider</value>
</property>
<property>
<name>http.agent.version</name>
<value>1.9</value>
</property>
<property>
<name>http.robots.agents</name>
<value>spider,*</value>
</property>
<property>
<name>http.proxy.host</name>
<value>10.22.96.29</value>
<description>The proxy hostname. If empty, no proxy is used.</description>
</property>
<property>
<name>http.proxy.port</name>
<value>8080</value>
<description>The proxy port.</description>
</property>
</configuration>
注:后两项为网络代理。
3.在nutch-1.9(nutch home目录)下添加urls文件夹,其中添加url.txt内容为想要爬取的网址。如:http://wsb.moh.gov.cn/ http://www.cnscn.com.cn/ 等。
4.修改conf下regex-urlfilter.txt。
注释掉红圈中两行。最下方加上相关规则。
5.Nutch与solr集成:
将nutch-1.9/conf/schema-solr4.xml拷贝到solr-4.10.0/solr/collection1/conf/schema.xml,并在<fields>...</fields>间添加一行:
<field name="_version_" type="long" indexed="true" stored="true"/>
重启Solr
打开cygwin,切换到nutch运行目录:f:/nutch-1.9
执行抓取命令:bin/crawl urls mydir http://10.72.36.30:8188/solr/ 2
注:需要替换lib目录下的hadoop jar包。否则报错。