文档章节

CentOS 6.5+Nutch 1.7+Solr 4.7+IK 2012

VictorHu
 VictorHu
发布于 2015/11/06 12:56
字数 862
阅读 12
收藏 0

环境


Linux版本:CentOS 6.5
JDK版本:JDK 1.7
Nutch版本:Nutch 1.7
Solr版本:Solr 4.7
IK版本:IK-Analyzer 2012

内容


1.安装JDK

1.1 在/usr/下创建java/目录,下载JDK包并解压

[root@localhost ~]# mkdir /usr/java 
[root@localhost ~]# cd /usr/java
[root@localhost ~]# curl -O http://download.oracle.com/otn-pub/java/jdk/7u75-b13/jdk-7u75-linux-x64.tar.gz
[root@localhost java]# tar –zxvf jdk-7u75-linux-x64.gz

1.2 设置环境变量

[root@localhost java]# vi /etc/profile

添加以下内容:

#set JDK environment
JAVA_HOME=/usr/java/jdk1.7.0_75
JRE_HOME=$JAVA_HOME/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOMECLASS_PATH PATH

使修改生效:

[root@localhost java]# source /etc/profile 

1.3 验证

[root@localhost java# java -version
java version "1.7.0_75"
Java(TM) SE Runtime Environment (build 1.7.0_75-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.75-b04, mixed mode)

2.安装Solr

2.1 在/usr/下创建solr目录,下载Solr安装包并解压

[root@localhost ~]# mkdir /usr/solr
[root@localhost ~]# cd /usr/solr
[root@localhost solr]# curl -O http://archive.apache.org/dist/lucene/solr/4.7.0/solr-4.7.0.tgz
[root@localhost solr]# tar –zxvfsolr-4.7.0.tgz

2.2 启动Jetty

这里使用Solr自带的Jetty服务器

[root@localhost solr]# cd solr-4.7.0/example
[root@localhost example]# java -jar start.jar

2.3 验证

在浏览器输入:http://10.192.87.198:8983/solr#/collection1/query

3.为Solr配置IK分词

3.1 下载IK-Analyzer-2012

解压之后,将IKAnalyzer.cfg.xml、IKAnalyzer2012_FF.jar、stopword.dic三个文件上传到/usr/solr/solr-4.7.0/example/solr-webapp/webapp/WEB-INF/lib/目录下

3.2 修改/usr/solr/solr-4.7.0/example/solr/collection1/conf/schema.xml配置文件

[root@localhost solr]# cd /usr/solr/solr-4.7.0/example/solr/collection1/conf/
[root@localhost solr]# vi schema.xml

<type></types>中增加如下内容:

<fieldTypename="text_ik" class="solr.TextField">
<analyzer type="index"isMaxWordLength="false"class="org.wltea.analyzer.lucene.IKAnalyzer"/>
 <analyzer type="query"isMaxWordLength="true" class="org.wltea.analyzer.lucene.IKAnalyzer"/>
</fieldType>

3.3 验证

重启Solr,打开http://10.192.87.198:8983/solr/#/collection1/analysis,测试一下:

分词结果:

4.安装Nutch

4.1 在/usr/下创建nutch目录,下载Nutch安装包并解压

[root@localhost ~]# mkdir /usr/nutch
[root@localhost ~]# cd /usr/nutch
[root@localhost nutch]# curl -O http://archive.apache.org/dist/nutch/1.7/apache-nutch-1.7-bin.tar.gz
[root@localhost nutch]# tar –zxvf apache-nutch-1.7-bin.tar.gz

4.2 修改nutch-site.xml配置文件

[root@localhost nutch]# cd apache-nutch-1.7/conf
[root@localhost conf]# vi nutch-site.xml

<configuration>..</configuration>中添加字段,如下:

<configuration>
  <property>
    <name>http.agent.name</name>
    <value>Friendly Crawler</value>
  </property>
  <property>
    <name>parser.skip.truncated</name>
    <value>false</value>
  </property>
</configuration>

4.3 修改regex-urlfilter.txt文件,设置过滤规则

[root@localhost conf]# vi nutch-site.xml

这里是以正则表达式匹配你希望爬取的网站的地址。 如下面例子,用正则表达式来限制爬虫的范围仅限于sohu.com这个域 修改前:

+.

修改后:

+^http://([a-z0-9]*\.)*sohu.com

4.4 设定所要爬取的网站

[root@localhost conf]# cd /usr/nutch/apache-nutch-1.7
[root@localhost apache-nutch-1.7]# mkdir urls
[root@localhost apache-nutch-1.7]# echo "http://www.sohu.com">urls/seed.txt

4.5 执行命令,进行爬取

[root@localhost apache-nutch-1.7]# bin/nutch crawl urls -dir crawl -depth 2 -topN 5

使用tree查看/usr/nutch/apache-nutch-1.7/crawl目录

[root@localhost apache-nutch-1.7]# tree crawl/
crawl/
├── crawldb
│   ├── current
│   │   └── part-00000
│   │       ├── data
│   │       └── index
│   └── old
│       └── part-00000
│           ├── data
│           └── index
├── linkdb
│   └── current
│       └── part-00000
│           ├── data
│           └── index
└── segments
    ├── 20150326234924
    │   ├── content
    │   │   └── part-00000
    │   │      ├── data
    │   │      └── index
    │   ├── crawl_fetch
    │   │   └── part-00000
    │   │      ├── data
    │   │      └── index
    │   ├── crawl_generate
    │   │   └── part-00000
    │   ├── crawl_parse
    │   │   └── part-00000
    │   ├── parse_data
    │   │   └── part-00000
    │   │      ├── data
    │   │      └── index
    │   └── parse_text
    │      └── part-00000
    │          ├── data
    │          └── index
    └── 20150326234933
        ├── content
        │   └── part-00000
        │      ├── data
        │      └── index
        ├── crawl_fetch
        │   └── part-00000
        │      ├── data
        │      └── index
        ├── crawl_generate
        │   └── part-00000
        ├── crawl_parse
        │   └── part-00000
        ├── parse_data
        │   └── part-00000
        │      ├── data
        │      └── index
        └── parse_text
            └── part-00000
                ├── data
                └── index

已经爬取到数据。

4.6 集成Solr

编辑/usr/solr/solr-4.7.0/example/solr/collection1/conf/schema.xml文件,在<field>…</fields>中增加如下字段:

   <fieldname="host" type="string" stored="false"indexed="true"/>
   <field name="digest"type="string" stored="true" indexed="false"/>
   <field name="segment"type="string" stored="true" indexed="false"/>
   <field name="boost"type="float" stored="true" indexed="false"/>
   <field name="tstamp"type="date" stored="true" indexed="false"/>
   <field name="anchor"type="string" stored="true" indexed="true" multiValued="true"/>
   <fieldname="cache" type="string" stored="true"indexed="false"/>

重启Solr,重新爬取

[root@localhost apache-nutch-1.7]# bin/nutch crawl urls -dir crawl -depth 2 -topN 5 -solr http://localhost:8983/solr

4.7 查看结果

在浏览器输入http://localhost:8983/solr#/collection1/query,进行查询.

© 著作权归作者所有

共有 人打赏支持
VictorHu
粉丝 1
博文 12
码字总数 14462
作品 0
闵行
Oracle Linux 真的是 CentOS 的更好替代品吗?

最近 Oracle 宣称旗下的 Oracle Linux 是比 CentOS 更好的免费替代品,且提供了一个切换脚本。不过,事实真的是这样子么? 在 Oracle 的宣传页面上,Oracle 大力强调 Oracle Linux 的优势: ...

oschina
2012/07/19
11K
68
CentOS下安装JDK笔记

JDK安装 大部分的服务都离不开JAVA环境,CentOS里都是OpenJDK,显然我们还是使用JAVA的JDK好。(注:CentOS minimal版没有安装OpenJDK,其它版本需要删除这个。) JDK下载 从http://www.orac...

不最醉不龟归
2016/11/05
3
0
微软发布 Linux Integration Services 4.0 更新

微软已经正式发布了 Linux Integration Services (LIS)4.0,其版本号为 4.0.11。Linux Integration Services 4.0 更新改进了对 Red HatEnterprise Linux 6.7、CentOS 6.7 和 Oracle Linux 6......

oschina
2015/08/21
4.3K
25
CentOS 5.8 发布

CentOS 5.8 发布了,下载地址: CentOS-5.8-i386-bin-DVD-1of2.iso (3,742MB, SHA256, torrent) CentOS-5.8-x8664-bin-DVD-1of2.iso (4,372MB, SHA256, torrent). 发行说明: http://lists.c......

红薯
2012/03/08
22.4K
18
CentOS 6.5 开启Xmanager远程桌面登录

准备:1,CentOS 6.5 minimal Desktop 2,配置CentOS可以访问互联网 开始: 1,使用命令 yum install xdm 安装XDM 通过 XDMCP 支持来管理 X 显示器集合 2,修改/etc/X11/xdm/Xaccess文件,找...

yzbty23
2016/05/23
155
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring IOC 之 注册 BeanDefinition

获取 Document 对象后,会根据该对象和 Resource 资源对象调用 registerBeanDefinitions() 方法,开始注册 BeanDefinitions 首先调用 createBeanDefinitionDocumentReader() 方法实例化 Bean...

职业搬砖20年
17分钟前
1
0
Pycahrm左边出现一些bookmark的取消方法

pycharm 左边出一个对号或则一个0,放上去提示Bookmark 取消方法:按F11

鹏灬
20分钟前
0
0
JDK1.8使用Dubbo时需注意

Dubbo自带的很多包都比较旧了,其中的javassist在JDK1.8上运行会报错 而且错误通常比较诡异,javassist是编辑和创建Java字节码的类库,常见的错误会从spring中报出 解决办法: <dependency>...

火龙战士
22分钟前
1
0
Java 对Oracle数据库中的 BLOB类型 插入图片

package test;import java.io.BufferedInputStream;import java.io.FileInputStream;import java.io.PrintStream;import java.sql.Connection;import java.sql.DriverManager;......

青峰Jun19er
24分钟前
0
0
awk复习

10月22日任务 复习 awk调用外部变量 -v参数设置内部变量调用外部变量 [root@test awk]# a=44[root@test awk]# echo "ABCD" | awk -v GET_A=$a '{print GET_A}'44 更复杂的应用: [root@...

robertt15
32分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部