利用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表示让输出内容表格显示表头 绿色表示一切正常,黄色表示所有的数据可用但是部分副 ...
随机推荐
- 教程:如何减小iOS应用程序的大小?
本文译自:Reducing the size of my App Q: 怎样才能让我的程序安装包小一点,让程序的下载和安装更快速? A: 本文收集了一些减小程序安装包大小的相关技巧(当第一次下载和安装 ...
- linux学习资料
鸟哥的Linux私房菜 基础学习篇(第三版) http://book.51cto.com/art/201007/211888.htm 鸟哥的Linux私房菜——服务器架设篇 http:// ...
- 帧与场 - djf_1985的专栏 - 博客频道 - CSDN.NET
帧与场 - djf_1985的专栏 - 博客频道 - CSDN.NET 电视信号是通过摄像机对自然景物的扫描并经光电转换形成的.扫描方式分为“逐行扫描”和“隔行扫描”.“逐行扫描”指每幅图像均是由电子 ...
- 关于消除MySQL输入错误后的警报声
找到mysql安装目录中的 my.ini 配置文件,在[mysql]行的下面加入一行 no-beep 即可消除声音. [mysql] no-beep default-character-set=gb2 ...
- NET开发必备工具之-LINQPad
第一步,下载:http://www.linqpad.net/ 第二步,安装 第三步,打开LINQPad 第四步,添加链接 第五步,输入SQL Server,用户名,密码 第六步,点击OK,成功链接 第 ...
- LeetCode25 Reverse Nodes in k-Group
题意: Given a linked list, reverse the nodes of a linked list k at a time and return its modified list ...
- ES6新特性以及一些规范
1.let:使变量成为块级变量,类似于C++,java类的变量 b = 2 if (b == 2) { let c = 2; } console.log(c) // 报错,因为c是一个块级变量,只存在 ...
- JavaScript组成
JavaScript由ECMAScript,Dom,Bom三部分组成. ECMAScript是一种由Ecma国际(前身为欧洲计算机制造商协会,英文名称是European Computer Manufa ...
- [JavaEE] WEB-INF有关的目录路径总结
1.资源文件只能放在WebContent下面,如 CSS,JS,image等.放在WEB-INF下引用不了. 2.页面放在WEB-INF目录下面,这样可以限制访问,提高安全性.如JSP,html 3. ...
- ie下使用firebug
https://getfirebug.com/firebuglite/ 是介绍firebug在别的浏览器如何使用 或者在html中引入firebug-lite.js,然后安F12 <script ...





























