public class ContentFilter implements IndexingFilter {
private Configuration conf;
public ContentFilter() {
}
/***
* 过滤包含过滤词的网页,如果包含过滤词,则返回null
*/
public NutchDocument filter(NutchDocument doc, Parse parse, Text url,
CrawlDatum datum, Inlinks inlinks) throws IndexingException {
String content = parse.getText();//取得网页内容
String title = parse.getData().getTitle();//取得网页标题
List<String> filterWords = FilterWord.getFilterWords();//静态变量存储过滤词
for(int i = 0; i < filterWords.size(); i++ ){
if (content.contains(filterWords.get(i))) {
doc = null;
}
if (title.contains(filterWords.get(i))) {
doc = null;
}
}
return doc;
}
public void setConf(Configuration conf) {
this.conf = conf;
}
public Configuration getConf() {
return this.conf;
}
public void addIndexBackendOptions(Configuration conf) {
this.conf = conf;
}
}
分享到:
相关推荐
总结来说,Nutch 是一个强大的开源网络爬虫工具,借助 Hadoop 实现了大规模的网页抓取和搜索功能。学习和使用 Nutch 可以帮助开发者深入了解 Web 数据抓取和搜索引擎的工作原理,对于大数据处理和信息提取有着重要的...
### Nutch插件开发知识点详解 #### 一、Nutch插件系统概述 Nutch是一款开源的网络爬虫工具,其强大的灵活性...通过以上步骤,我们可以成功地开发出一个新的Nutch插件,并将其集成到Nutch系统中,以实现定制化的需求。
4. **过滤**:Nutch包含一系列插件用于去除广告、脚本、样式表等非正文内容,提高数据质量。 5. **分词与索引**:使用Analyzer进行中文或英文等语言的分词,然后将分词结果建立倒排索引。 6. **存储**:Nutch使用...
同时,在`nutch-default.xml`中指定该文件的路径,以及设置HTTP代理名称和URL过滤规则。 #### 步骤6:运行Nutch爬虫 最后,你可以在Eclipse中运行Nutch的爬虫任务了。选择“Run As > Java Application”,并在...
这部分源码涉及了URL过滤、去重、调度算法等内容。 2. **分词(Tokenization)**:Nutch使用了Apache Lucene库进行文本分析,包括分词、停用词移除、词干化等预处理步骤,以准备数据供索引使用。 3. **索引...
每个实现该接口的插件会在分析过程中按顺序执行,提供对索引内容的自定义处理。 3. **Search Filter插件**:搜索过滤器插件用于在查询处理阶段进行操作,可以改变查询结果的排序或分组。 4. **Protocol插件**:...
Nutch是一个高度可扩展的开源搜索引擎,它提供了网页抓取、解析、过滤、索引和搜索等功能。Nutch最初设计的目标是创建一个与商业搜索引擎相媲美的开放源代码搜索解决方案,用于企业内部或特定领域的信息检索。 2. ...
Nutch使用Hadoop进行分布式处理,通过MapReduce实现增量索引的计算任务。 3. **中文分词**:由于中文文本没有明显的空格分隔单词,因此中文分词是中文信息处理中的关键步骤。Nutch支持多种中文分词工具,如HanLP、...
Nutch2.3.1是Apache Nutch的一个稳定版本,它是一个开源的网络爬虫框架,主要用于抓取、解析和索引互联网上的网页内容。在本文中,我们将深入探讨如何搭建Nutch2.3.1的运行环境,以便进行网页抓取和分析。 **一、...
- **实现类**:`org.apache.nutch.parse.Parse` 和 `org.apache.nutch.parse.ParseSegment` - **作用**: - 解析HTML文档,提取文本内容和链接。 - 对提取出的链接进行分析,决定是否进一步抓取。 - 根据解析结果...
Nutch还支持自定义分词器和过滤器,可以根据具体语言或需求进行调整。 4. **索引更新与合并**:Nutch支持增量索引,这意味着它可以仅对新抓取或更新的网页进行索引,而不是重新索引整个集合。索引合并则用于定期...
了解并正确配置这些文件对于优化Nutch的性能和实现特定功能至关重要。 在实际使用中,开发者和管理员需要根据项目的具体需求来调整这些配置文件,比如调整爬虫的速度以避免对目标网站造成过大压力,或者定制分词...
- **MapReduce**:Nutch的大部分处理任务都是通过Hadoop的MapReduce模型执行的,实现了并行处理和容错性。 4. **配置与插件体系** - **配置文件**:Nutch的运行依赖于一系列配置文件,如`conf/nutch-site.xml`,...
Nutch是一款开源的网络爬虫项目,基于Hadoop实现,可以抓取整个互联网,并且能够根据网页内容进行索引和检索。本文将详细介绍如何在Windows环境下安装配置Nutch,使初学者能够轻松上手。 #### 二、准备工作 在安装...
Nutch 的源代码解析对于深入理解搜索引擎的工作原理以及自定义搜索引擎的实现非常有帮助。下面我们将详细探讨 Nutch 的注入(Injector)过程,这是整个爬取流程的第一步。 Injector 类在 Nutch 中的作用是将输入的 ...
Nutch是一款开源的、基于Java实现的全文搜索引擎,它主要用于构建大规模的网络爬虫系统,并提供了对抓取的网页进行索引和搜索的功能。Nutch与Hadoop紧密集成,能够充分利用分布式计算的优势,处理海量数据。在本篇中...
### Apache Nutch 1.4在Windows下的安装与配置详解 #### 一、Apache Nutch...通过以上步骤,用户不仅能够实现对目标网站的自动化爬取,还能利用Solr进行高效的数据管理和检索,极大地提升了数据处理的效率和便利性。
在 Nutch 框架中,Solr 作为索引和搜索的后端,接收 Nutch 生成的索引数据,提供高级的查询和过滤功能,支持实时搜索。 【Nutch 脚本】 Nutch 的运行主要依赖于一系列脚本,这些脚本控制着爬虫的工作流程,包括生成...
8. **conf** 文件夹:包含了Nutch的各种配置文件,如`regex-urlfilter.txt`用于过滤URL,`crawlDatumStorage.conf`定义数据存储方式,`nutch-site.xml`是Nutch的核心配置文件。 9. **docs** 文件夹:可能包含Nutch...
标题中的“Nutch入门学习”指的是Apache Nutch,这是一个开源的网络爬虫项目,用于抓取Web内容并建立搜索引擎。Nutch是大数据处理框架Hadoop的一个重要组成部分,它使用Hadoop进行分布式数据存储和处理。Nutch的学习...