1.nutch建立索引成功,通过lucene直接搜索索引文件可以搜索到相关结果,但是通过nutch搜索不到结果
解决方案:
<property>
<name>searcher.dir</name>
<value>crawl</value>
</property>
在nutch-default.xml中配置searcher.dir的默认路径为crawl,nutch会到crawl这个路径里面搜索,而你的索引文件跟本不在这个目录下面,所有搜索不到结果.
你可以在nutch-site.xml中加入searcher.dir这个属性的配置,value为nutch的索引文件的上一级目录.
比如: 你的索引文件为f:/temp/index,你应该配置为f :/temp
<property>
<name>searcher.dir</name>
<value>f:/temp</value>
</property>
搜索不到的另一个原因:
nutch是通过BooleanQuery来搜索的,当你搜索相关内容的时候,默认会搜索所有的FIELD.
你必须保证所搜索Field之间的相关关系为BooleanClause.Occur.SHOULD
2.怎么高亮显示搜索结果
Hits hits = bean.search(query, 10);
HitDetails detail=bean.getDetails(hits.getHit(i));
Summary summaries = bean.getSummary(detail, query);
String content=summaries.toHtml(true); //这样得到高亮显示的HTML
3.nutch在控制台跑不来的原因
nutch-default.xml文件里面配置了nutch的相关配置文件.
而nutch在读取这些文件的时候,是通过Configuration.class.getResource("")(读取当前类路径)来读取相关配置文件的.
所以跑不起来,须先看看你的相应配置文件,在不在你的类路径下..
类路径必须包含的文件有:
mime-types.xml
common-terms.utf8
parse-plugins.xml
nutch-site.xml
nutch-default.xml
regex-urlfilter.txt
crawl-urlfilter.txt
4. 网页快照如何实现
nutch通过相关词进行搜索网页的时候,会查询出这个关键词对应的相关信息..
比如:title,url,content等等.
通过URL我们可以链接到相关真实的URL.
而网页快照其实是nutch在索引时,索引以前网页的内容.
所有当点击网页快照时,我们根据索引文档的ID,去索引出原网页内容.
Hit hit = new Hit(getIndexNo,getIndexDocNo);
HitDetails details = bean.getDetails(hit);
String content = new String(bean.getContent(details));
先写到这里,后面会继续补充..............................
分享到:
相关推荐
然而,在实际使用过程中,由于编码问题,Nutch可能会出现部分网页乱码的情况。本篇文章将深入探讨这个问题,并提供具体的代码修复方案。 网页乱码通常是由于字符编码不匹配导致的。在Nutch中,当它抓取到不同编码...
Nutch 提供了一套完整的解决方案,包括爬虫、索引器和搜索引擎,使得开发者可以轻松构建自己的网络爬虫系统。 **Nutch 的架构** Nutch 的架构基于分治思想,整个抓取过程被分为多个步骤,包括种子页面生成、页面...
因此,Nutch 可以看作是 Lucene 的一个应用,提供了一个完整的搜索引擎解决方案。如果你已经有数据源,只需要搜索功能,可以直接使用 Lucene。而当你需要从网上抓取数据并进行搜索时,Nutch 就是更好的选择。 4. **...
在实际操作过程中,可能会遇到各种问题,如依赖冲突、配置错误等,这时可以查阅官方文档或社区资源寻求解决方案。同时,提供的图片文件(如`搭建开发环境X.png`)可能包含更具体的界面截图或操作指南,可以帮助理解...
此外,Nutch还支持其他数据存储解决方案,如Cassandra或MongoDB。 7. **索引与搜索**:Nutch不仅抓取网页,还会将抓取的数据进行索引,以便于后续的搜索操作。它集成了Lucene库,提供高效的全文检索功能。 8. **...
该项目的核心目标是提供一个可扩展、高性能的搜索引擎解决方案。 1. **Nutch的架构** Nutch采用模块化设计,主要分为以下几个关键组件: - **Fetcher**: 负责抓取网页,通过HTTP协议与服务器交互。 - **Parser**...
这个项目是Apache Lucene的一部分,提供了完整的搜索引擎解决方案。Eclipse 是一个流行的Java集成开发环境(IDE),在这里被用于开发和管理Nutch 1.2项目。 Nutch 1.2 的主要功能包括: 1. **网络爬虫**:Nutch的...
总之,Nutch是一个强大的分布式搜索引擎开发工具,它结合了Hadoop的分布式计算能力,为大规模网页抓取和搜索提供了高效解决方案。通过深入学习和实践,我们可以利用Nutch构建自己的个性化搜索引擎,满足各种复杂场景...
Nutch的目标是提供一个可扩展、高效的搜索解决方案,可以与Hadoop等大数据处理框架结合,处理海量的网页数据。 1. **Nutch 爬虫机制** - **种子URL**:爬虫的起点是一组种子URL,这些URL会被添加到待抓取的队列中...
Nutch 是一个开源的 Web 搜索引擎项目,由 Java 编写,它提供了一种分布式爬虫解决方案,能够从互联网中抓取网页并进行索引,为数据分析和信息检索提供支持。Nutch 的设计目标是透明度和公正性,与商业搜索引擎相比...
Apache Nutch是一个开源的全文搜索引擎项目,它被广泛用于构建自定义的搜索引擎或爬虫解决方案。本教程将详细介绍如何搭建Nutch 1.2的Web开发环境,因为从Nutch 1.3版本开始,Web界面部分已被移除。 首先,我们需要...
而Nutch不仅包含Lucene的索引能力,还集成了网页抓取、链接分析等更多功能,是一个全面的搜索引擎解决方案。 #### 2. Nutch的安装与配置 **2.1 JDK的安装与配置** Nutch依赖于Java环境,因此首先需要在服务器或...
Nutch的目标是提供一个可扩展、高性能的网络爬虫解决方案,能够处理大量的网页数据。 2. **default.properties**:这是一个配置文件,包含Nutch的基本设置。用户可以根据需求调整这些参数来定制爬虫的行为,比如...
7. **问题排查**:常见错误的解决方法,以及如何优化Nutch的性能。 通过学习这些知识点,初学者能够逐步掌握Nutch的基本操作,并具备构建和维护自己的Web爬虫系统的能力。同时,对于想深入了解搜索引擎原理或者...
在前一篇文章中,我们探讨了Nutch开源搜索引擎在进行增量索引更新(recrawl)时遇到的问题及其初步解决方案。然而,在实际操作过程中发现,尽管解决了基本的增量更新逻辑,但在执行`indexmerge`命令后,新旧索引合并...
#### 五、常见问题及解决方案 1. **Cygwin 安装与配置**: - Cygwin 的安装可以通过官网下载安装程序,按照提示完成安装。 - 确保已将 Cygwin 的 bin 目录添加到系统 PATH 环境变量中。 2. **运行时错误**: - ...
Nutch是由Apache软件基金会开发并维护的,其目标是提供一种可扩展、可靠的全网搜索解决方案。Nutch 1.7是该项目的其中一个稳定版本,包含了丰富的功能和优化。 在“apache-nutch-1.7-src.tar.gz”这个压缩包中,你...
总结,Nutch 0.9 版本为用户提供了完整的网络爬虫解决方案,包括Web界面、命令行工具和源代码,使得用户能够快速搭建和运行一个搜索引擎,同时也为开发者提供了深入学习和定制的机会。对于研究和实践搜索引擎技术的...