利用Nutch和Tomcat构建搜索引擎
利用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构建搜索引擎的更多相关文章
- 【Nutch2.2.1基础教程之2.2】集成Nutch/Hbase/Solr构建搜索引擎之二:内容分析
请先参见"集成Nutch/Hbase/Solr构建搜索引擎之一:安装及运行",搭建测试环境 http://blog.csdn.net/jediael_lu/article/deta ...
- 【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的配置 ...
- 【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 ...
- python利用Trie(前缀树)实现搜索引擎中关键字输入提示(学习Hash Trie和Double-array Trie)
python利用Trie(前缀树)实现搜索引擎中关键字输入提示(学习Hash Trie和Double-array Trie) 主要包括两部分内容:(1)利用python中的dict实现Trie:(2) ...
- eclipse+maven+tomcat构建web工程
我们要利用Maven构建一个web应用,开发环境为eclipse+tomcat.构建过程如下: 1.工具准备 eclipse:版本为eclipse 4.2(Juno Service),maven插件的 ...
- 利用 Rational ClearCase ClearMake 构建高性能的企业级构建环境
转载地址:http://www.ibm.com/developerworks/cn/rational/r-cn-clearmakebuild/ 构建管理是 IBM® Rational® ClearCa ...
- 使用spring+hibernate+atomikos+tomcat构建分布式事务
本文通过一个demo,介绍如何使用spring+hibernate+atomikos+tomcat构建在一个事务中涉及两个数据源的web应用. demo功能:实现一个能成功提交和回滚的涉及两个数据库数 ...
- 使用spring+mybatis+atomikos+tomcat构建分布式事务
本文通过一个demo,介绍如何使用spring+mybatis+atomikos+tomcat构建在一个事务中涉及两个数据源的web应用. demo功能:实现一个能成功提交和回滚的涉及两个数据库数据源 ...
- 学习用Node.js和Elasticsearch构建搜索引擎(6):实际项目中常用命令使用记录
1.检测集群是否健康. curl -XGET 'localhost:9200/_cat/health?v' #后面加一个v表示让输出内容表格显示表头 绿色表示一切正常,黄色表示所有的数据可用但是部分副 ...
随机推荐
- 使用get方式提交数据
get提交代码 import java.io.InputStream; import java.net.HttpURLConnection; import java.net.MalformedURLE ...
- 翻译:WebApi 认证--用户认证Oauth解析
The Web API v2用户认证模板提供了流行的应用用户认证场景,如.使用本地帐号的用户名密码认账 (包括创建用户.设置和修改密码)以及使用第三方的认证方式,如facebook,googl ...
- PHP面向对象(二)--构造函数与析构函数
一.构造方法: 构造方法又称为构造函数,是对象被创建时自动调用的方法,用来完成类初始化的工作. 1.构造方法和其他函数一样,可以传递参数,可以设定参数默认值. 2.构造方法可以调用属性,也可以调用方法 ...
- iis8 默认不支持svc解决方法
最近在IIS8中发布WCF服务应用时,发现IIS8不支持WCF服务svc请求,后来发现IIS8缺少对WCF服务的Managed Handler,按照以下步骤添加后,IIS8即支持WCF服务. 1. 首 ...
- Java Script基础(八) Array数组对象
一.Array数组 JavaScript中的数组也是具有相同数据类型的一个或者多个值得集合.用法和Java中的数组类似. Array对象的常用属性和方法: 属性: length:获取数组的长度: 方法 ...
- oracle PL/SQL(procedure language/SQL)程序设计之异常(exception)
什么是异常?在PL/SQL中的一个标识.在程序运行期间被触发的错误.异常是怎样被触发的?产生一个Oracle错误.用户显示触发.怎样处理异常?用异常处理句柄捕获异常.传播异常到调用环境. 捕获异常 E ...
- 怒刷DP之 HDU 1114
Piggy-Bank Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit S ...
- CF Preparing Olympiad (DFS)
Preparing Olympiad time limit per test 2 seconds memory limit per test 256 megabytes input standard ...
- 获取IOS bundle中的文件
在xcode中选择bundle中的文件,右键Show in Finder即可拷贝或删除文件.
- Python之Python Imaging Library
document:http://effbot.org/imagingbook/pil-index.htm http://pillow.readthedocs.io/en/3.1.x/index.htm ...