利用Nutch和Tomcat构建搜索引擎

1.安装环境及软件版本介绍

本教程是在Linux Ubuntu 12.04 desktop i386操作系统上搭建,结合使用了Nutch-1.2和Apache-Tomcat8.0.0构建搜索引擎(其他版本可能方法于此不同)。其中Apache-Tomcat8.0.0将本地机器配置成小型web服务器,Nutch1.2作为搜索引擎的核心,完成了网页爬取、索引构建和响应查询的的功能。

需要安装的组件:

Ø  JDK1.7.0:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

Ø  Apache-Tomcat8.0.0: http://tomcat.apache.org/download-80.cgi

Ø  Nutch-1.2:http://archive.apache.org/dist/nutch/

2.安装JDK1.7.0

(1)打开网址http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html,下载相应的JDK文件;

(2)解压文件;

(3)配置环境变量;

(4)检查是否安装正确

3.  nutch安装的配置

  (1)打开网址http://archive.apache.org/dist/nutch/ 下载nutch-1.2;

(2)解压文件;

(3)修改工作目录和权限;

(4)填写配置文件;

4.  Tomcat安装和配置

  (1)打开网址http://tomcat.apache.org/download-80.cgi, 下载Tomcat8.0.0;

  (2)解压文件;

(3)修改工作目录和权限;

5.抓取网页内容

(1)修改配置文件crawl-urlfilter.txt,把要爬取的网页url的正则表达式填写到适当的位置;

(2)在nutch根目录下建立种子文件,填写起始的url地址;

(3)输入命令,开始爬取,等待爬取完成;

参数说明:

Crawl           运行爬虫功能

Seed.txt        爬虫种子url保存的文件

-dir               爬虫抓取结果保存的路径

-depth 10      爬取的深度是10

-topN 20       每个网页取前20个url

-threads 5     启用5线程

6.构建搜索引擎

(1)把nutch根目录下的nutch-1.2.war文件拷贝到tomcat根目录下webapps文件夹内;

(2)运行tomcat服务器;

(3)等待tomcat自动生成文件,然后修改生成的nutch-size.xml文件,把6节中抓取的网页内容的文件夹填写到配置文件中;

(4)重启tomcat,启用上一步配置;

7.查看结果

(1)打开任意的浏览器,这里以chrome浏览器为例,在地址栏输入http://localhost:8080/nutch-1.2

  (2)在编辑框内填写要搜索的内容,以搜狐为例;

利用Nutch和Tomcat构建搜索引擎的更多相关文章

  1. 【Nutch2.2.1基础教程之2.2】集成Nutch/Hbase/Solr构建搜索引擎之二:内容分析

    请先参见"集成Nutch/Hbase/Solr构建搜索引擎之一:安装及运行",搭建测试环境 http://blog.csdn.net/jediael_lu/article/deta ...

  2. 【Nutch2.2.1基础教程之2.1】集成Nutch/Hbase/Solr构建搜索引擎之一:安装及运行【单机环境】

    1.下载相关软件,并解压 版本号如下: (1)apache-nutch-2.2.1 (2) hbase-0.90.4 (3)solr-4.9.0 并解压至/usr/search 2.Nutch的配置 ...

  3. 【Nutch2.3基础教程】集成Nutch/Hadoop/Hbase/Solr构建搜索引擎:安装及运行【集群环境】

    1.下载相关软件,并解压 版本号如下: (1)apache-nutch-2.3 (2) hadoop-1.2.1 (3)hbase-0.92.1 (4)solr-4.9.0 并解压至/opt/jedi ...

  4. python利用Trie(前缀树)实现搜索引擎中关键字输入提示(学习Hash Trie和Double-array Trie)

    python利用Trie(前缀树)实现搜索引擎中关键字输入提示(学习Hash Trie和Double-array Trie) 主要包括两部分内容:(1)利用python中的dict实现Trie:(2) ...

  5. eclipse+maven+tomcat构建web工程

    我们要利用Maven构建一个web应用,开发环境为eclipse+tomcat.构建过程如下: 1.工具准备 eclipse:版本为eclipse 4.2(Juno Service),maven插件的 ...

  6. 利用 Rational ClearCase ClearMake 构建高性能的企业级构建环境

    转载地址:http://www.ibm.com/developerworks/cn/rational/r-cn-clearmakebuild/ 构建管理是 IBM® Rational® ClearCa ...

  7. 使用spring+hibernate+atomikos+tomcat构建分布式事务

    本文通过一个demo,介绍如何使用spring+hibernate+atomikos+tomcat构建在一个事务中涉及两个数据源的web应用. demo功能:实现一个能成功提交和回滚的涉及两个数据库数 ...

  8. 使用spring+mybatis+atomikos+tomcat构建分布式事务

    本文通过一个demo,介绍如何使用spring+mybatis+atomikos+tomcat构建在一个事务中涉及两个数据源的web应用. demo功能:实现一个能成功提交和回滚的涉及两个数据库数据源 ...

  9. 学习用Node.js和Elasticsearch构建搜索引擎(6):实际项目中常用命令使用记录

    1.检测集群是否健康. curl -XGET 'localhost:9200/_cat/health?v' #后面加一个v表示让输出内容表格显示表头 绿色表示一切正常,黄色表示所有的数据可用但是部分副 ...

随机推荐

  1. 项目源码--Android类似酷狗音乐播放器

    下载源码 知识技能概要: 1.音乐文件的扫描与管理 2.音频流的解码 3. UI控件的综合使用 4.播放列表方式管理 5.随机播放方式 6.源码带详细的中文注释 ...... 详细介绍 1. 音乐文件 ...

  2. Java去除掉HTML里面所有标签的两种方法——开源jar包和自己写正则表达式

    Java去除掉HTML里面所有标签,主要就两种,要么用开源的jar处理,要么就自己写正则表达式.自己写的话,可能处理不全一些自定义的标签.企业应用基本都是能找开源就找开源,实在不行才自己写…… 1,开 ...

  3. selenium 一个简单的流程

    在整个自动化测试过程中需要分为及部分:      1.初始化      2.结束      3.异常处理      4.截图      5.对弹窗的处理      6.测试用例   整个过程中需要包括 ...

  4. JS 解析Xml

    loadXML = function (xmlString) { var xmlDoc = null; //判断浏览器的类型 //支持IE浏览器 if (!window.DOMParser & ...

  5. IOS 使用webview 显示 doc/docx/xls/pdf等

    在一款项目里添加阅读各种文档功能 那么对在线的文档或者是下载后的文档 进行阅读,比如 doc/docx/xls/pdf等文件 有两种方法总结如下: 1. - (void)viewDidLoad { [ ...

  6. iOS 重力感应 学习1 陀螺仪 水平仪 指南针

    小球可以随着重力感应 四处乱撞. 放大了坐标位移 就可以看见小球动了. 然后规定小球的路径 当滑到中间时候 弹出一张图片 作为提示. 我做了一个小demo 效果不错哦 CMMotionManager ...

  7. 【Shell脚本学习10】Shell运算符:Shell算数运算符、关系运算符、布尔运算符、字符串运算符等

    Bash 支持很多运算符,包括算数运算符.关系运算符.布尔运算符.字符串运算符和文件测试运算符. 原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr,expr 最 ...

  8. 瀑布流插件(jquery.masonry.js)

    什么是瀑布流?去看看Pinterest(这才是鼻祖),Mark之,蘑菇街,点点网,还有腾讯的微博广场吧.随着页面滚动条向下滚动,还会不断加载数据块并附加至当前尾部. Masonry是一款很好用的jqu ...

  9. VMware系统运维(十四)部署虚拟化桌面 Horzion View Manager 5.2 配置许可

    1.通过网页访问https://conntionserver.testad.local/admin,打开如下图所示页面:输入用户名密码 2.进来以后配置View 许可,点击"编辑许可证&qu ...

  10. Umbraco(6)-Creating More Pages Using the Master - Part 2(翻译文档)

    创建一个Contact Us页面 我们将创建一个新的”联系我们“页面,在该页面我们将放置简单的联系信息.对于添加这个功能你可能想替换为一个完全成熟的形式. 一些有效的解决方案: 使用表面控制器构建自己 ...