`
javaxhw
  • 浏览: 37343 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

搭建基于nutch的搜索引擎

阅读更多
这两天闲着没事,看了看开源项目luncence和nutch,冲动之下利用nutch搭建一个简单的仿百度下的小小的搜索引擎,在搭建过程中,参考了于天恩老师写的《LUCENE搜索引擎开发权威经典》一书中后面的一章,感觉这本书对lucence的知识写的通俗易懂,下面说下搭建nutch的方法:

准备软件:

cywin:下载地址: http://inst.eecs.berkeley.edu/~instcd/iso//cygwin-release-20061108.iso
nutch:下载地址: http://apache.freelamp.com/nutch/nutch-0.9.tar.gz
tomat::(下载地址不提供,自己下)
JDK:(下载地址不提供,自己下)

怎么安装的就不介绍了,可以到网上去找,比较容易下面介绍安装后的配置:

环境配置:

1、修改:C:\nutch-0.9\conf\nutch-site.xml
内容如下:
说明:由于nutch自动的这个配置文件<configuration></configuration>中间是空的,所以需要把下面的给添加上去,内容可以根据相关规则自己可以更改
---------------------------------------------
<?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>Nutch</value>
  <description>Peter Pu Wang</description>
</property>
<property>
  <name>http.robots.agents</name>
  <value>Nutch,*</value>
  <description>The agent strings we'll look for in robots.txt files,comma-separated,in decreasiong order of precedence.You should put the value of http.agent.name as the first agent name,and keep the default * at the end of the list. E.g:BlurflDev,Blurfl,*
  </description>
</property>
<property>
  <name>http.agent.description</name>
  <value>Nutch</value>
  <description>Futher description of our bot-ths text is used in the User-Agent header.It appears in parenthesis after the agent name.
  </description>
</property>

<property>
  <name>http.agent.url</name>
  <value>http://lucene.apache.org/nutch/bot.html</value>
  <description>A Url to advertise in the User-Agent header.Thes will appear in parenthesis after the agent name.Custom dictates that this should be a URL of a page explaining the purpose and behavior of this crawler.
  </description>
</property>
<property>
  <name>http.agent.email</name>
  <value>Nutch-agent@lucence.apache.org</value>
  <description>An email address to advertise in the HTTP 'From' request header and User-Agent header.A good practice is to mangle this address(e.g.'info at example dot com') to avoid spamming.
  </description>
</property>
</configuration>
----------------------------------------------------

2、在nutch根目录下创建urls目录文件,在urls目录里面创建url.txt

里面内容写上爬虫起先开始抓取的网址:

如直接输入:http://www.qq.com/
3、修改:C:\nutch-0.9\conf\crawl-urlfilter.txt
内容如下:
说明:只需要修改下面的:+^http://www.qq.com/ 把网址可以换掉这个网址,刚开始这个地方是个正则表达式,也可以自己写成一个正则表达式匹配更多网址
------------------------------------------------
# The url filter file used by the crawl command.

# Better for intranet crawling.
# Be sure to change MY.DOMAIN.NAME to your domain name.

# Each non-comment, non-blank line contains a regular expression
# prefixed by '+' or '-'.  The first matching pattern in the file
# determines whether a URL is included or ignored.  If no pattern
# matches, the URL is ignored.

# skip file:, ftp:, & mailto: urls
-^(file|ftp|mailto):

# skip image and other suffixes we can't yet parse
-\.(gif|GIF|jpg|JPG|png|PNG|ico|ICO|css|sit|eps|wmf|zip|ppt|mpg|xls|gz|rpm|tgz|mov|MOV|exe|jpeg|JPEG|bmp|BMP)$

# skip URLs containing certain characters as probable queries, etc.
-[?*!@=]

# skip URLs with slash-delimited segment that repeats 3+ times, to break loops
-.*(/.+?)/.*?\1/.*?\1/

# accept hosts in MY.DOMAIN.NAME
+^http://www.qq.com/

# skip everything else
-.

------------------------------------------------
4、配置nutch系统服务
NUTCH_JAVA_HOME:C:\Program Files\Java\jdk1.6.0_13
clsspath:%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\htmlconverter.jar;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\sample\jnlp\servlet\jnlp-servlet.jar;%JAVA_HOME%\lib\jconsole.jar

5、配置cywin爬虫抓取网页数据的方法

安装cywin后桌面会出现一个cywin的图标,点击后会出现一个控制台

第一步:进入到下载的nutch解压后的的根目录下,输入cd  c:/nutch0.9

第二步:键入命令:bin/nutch crawl urls -dir mydir -depth 10

说明:第二步中的命令参数有好些个可以自己选择,上面是我自己敲入的几个参数:

其中mydir:抓取的网页的输入存储的路径,这个名称可以自定义,抓取结束后会发现nutch跟目下会有个mydir的目录

-depth 10:-depth是指抓取的网页的深度,我这里设置的10,就是深度为10,你也可以设置大点或者小一点都可以




6、nutch程序部署
将nutch更目录下的C:\nutch-0.9\nutch-0.9.war拷贝到tomcat下直接部署即可
部署的程序配置:
1、D:\apache-tomcat-6.0.18\webapps\nutch-9\WEB-INF\classes\hadoop-site.xml
修改为: 其中mydir目录名称是你进行爬虫的时候配置创建的目录,需要对应名称
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<!-- Put site-specific property overrides in this file. -->

<configuration>
<property>
<name>searcher.dir</name>
<value>C:\nutch-0.9\mydir</value>
</property>
</configuration>

2、启动tomcat

以上的配置设置完之后,先执行上面的第四项先抓取数据后在启动tomcat也就是执行第五步可以开始访问了。
分享到:
评论

相关推荐

    基于lucene和nutch的开源搜索引擎资料集合

    [硕士论文]_基于Nutch的垂直搜索引擎的分析与实现.pdf 一个例子学懂搜索引擎(lucene).doc 中文搜索引擎技术揭密.doc 九大开源搜索引擎介绍.txt 基于Nutch的搜索引擎技术.pdf 基于开源工具搭建小型搜索引擎.pdf 整合...

    开发基于 Nutch 的集群式搜索引擎

    Nutch搜索引擎的核心功能包括网页抓取、内容解析、索引建立以及查询服务。其中,网页抓取(或称爬虫)模块负责从网络上抓取网页内容;内容解析模块用于提取网页中的文本信息;索引建立模块则将解析后的数据组织成...

    nutch框架 搜索引擎

    ### Nutch框架:一个灵活与可扩展的开源搜索引擎 #### 基本概念与起源 Nutch是一款由Nutch组织发起、多个实验室如CommerceNet Labs共同研发的开源Web搜索引擎。其设计初衷旨在提供一个透明、公正的全球网络搜索...

    基于nutch的搜索引擎案例实验报告

    利用开源工具搭建一个简单的搜索引擎的实验报告,是我搜索引擎课程的大作业 开发环境:win7系统,Cygwin,nutch,xampp,jdk,

    lucene+nutch搜索引擎光盘源码(1-8章)

    《lucene+nutch搜索引擎光盘源码(1-8章)》是一套全面解析Lucene和Nutch搜索引擎技术的源代码教程,涵盖了从基础到进阶的多个层面。这套资源包含8个章节的源码,由于文件大小限制,被分成了多个部分进行上传。 ...

    搭建nutch web开发环境

    Apache Nutch是一个开源的全文搜索引擎项目,它被广泛用于构建自定义的搜索引擎或爬虫解决方案。本教程将详细介绍如何搭建Nutch 1.2的Web开发环境,因为从Nutch 1.3版本开始,Web界面部分已被移除。 首先,我们需要...

    Nutch公开课从搜索引擎到网络爬虫

    Nutch的使用者可以用它来搭建站内搜索引擎,如Oregon State University,也可以用来创建全网搜索引擎,如即刻搜索,以及垂直搜索引擎如Internet Archive和Creative Commons。Nutch还常用于数据采集,它可以收集各类...

    nutch+lucene开发自己的搜索引擎ch3.pdf

    部分内容介绍了如何利用开源工具快速搭建具有搜索功能的系统,具体涵盖了Nutch和Lucene的基础知识及其在搜索引擎开发中的应用。 #### 二、Nutch与Lucene简介 1. **Lucene系统概述**: - **背景**: Lucene是由Doug ...

    开发自己的搜索引擎 lunenc nutch

    标题 "开发自己的搜索引擎 lunenc nutch" 暗示了我们正在探讨如何构建自定义的搜索引擎,这通常涉及开源项目 Lucene 和 Nutch 的结合使用。Lucene 是一个全文搜索引擎库,而 Nutch 是一个完整的网络爬虫项目,两者...

    nutch-0.9 环境搭建所需最小cygwin

    《nutch-0.9 环境搭建所需最小cygwin详解》 在构建一个功能完备的搜索引擎系统时,Apache Nutch是...尽管这需要一定的技术背景,但只要遵循上述步骤并耐心处理可能出现的问题,你就能成功构建起自己的Nutch搜索引擎。

    Lucene+Nutch搜索光盘资料

    而Nutch则是一个基于Lucene的网络爬虫系统,它能够抓取互联网上的网页并建立索引,为搜索引擎提供数据来源。 一、Lucene详解 Lucene的核心功能包括文本分析、索引构建、搜索和结果排序等。文本分析涉及分词、去除...

    Nutch+solr + hadoop相关框架搭建教程

    Apache Solr 是一个基于 Lucene 的全文搜索引擎服务器,用于高效地存储和检索大量文本数据。在 Nutch 框架中,Solr 作为索引和搜索的后端,接收 Nutch 生成的索引数据,提供高级的查询和过滤功能,支持实时搜索。 ...

    nutch使用&Nutch;入门教程

    Nutch是一个基于Java的开源搜索引擎,其主要功能包括网页抓取、链接分析、网页排名和索引。Nutch的设计目标是提供一种灵活、可扩展的搜索解决方案,可以作为企业内部搜索引擎或者构建大型分布式搜索引擎的基础。 二...

    基于hbase+solr的搜索引擎毕业论文

    简单的来说,在单机上搭建伪分布部署来实现爬取数据和数据存取。Nutch抓取指定网址数据,存储在HBase数据库中,存储过程由zookeeper管理。脚本调用索引器部件将数据索引化,经过索引化的数据被前端检索查询,最后...

    nutch帮助文档;nutch学习 入门

    Nutch是Apache软件基金会开发的一款开源搜索引擎项目,主要用于抓取、索引和搜索Web内容。作为初学者,了解和掌握Nutch的相关知识是探索搜索引擎技术的第一步。本篇将深入探讨Nutch的基本概念、功能、架构以及如何...

Global site tag (gtag.js) - Google Analytics