nutch 1.0 读源码,过滤掉不正确的URL实现方法:
对URL不规则或想过滤掉的地方,可以通过修改源码来实现,省去写配置文件,因为配置文件并不是太明朗,有些配置了也不一定成功。所以我考虑在源码上作操作。更好地扩展。当然你也可以去写插件,这儿就不说了,因为我也没有去那样实现,我只是对插件进行了扩展采集自己想要的内容。
过滤URL部分:
类:CrawlDbFilter
// 对url过滤的处理方法。可以实现一个自己的过滤器对URL进行重新定义成自己喜欢的URL
public void map(Text key, CrawlDatum value,
OutputCollector<Text, CrawlDatum> output,
Reporter reporter) throws IOException {
String url = key.toString();
if (urlNormalizers) {
try {
url = normalizers.normalize(url, scope); // normalize the url
} catch (Exception e) {
LOG.warn("Skipping " + url + ":" + e);
url = null;
}
}
if (url != null && urlFiltering) {
try {
//此处为过滤的URL规则
url = filters.filter(url); // filter the url
} catch (Exception e) {
LOG.warn("Skipping " + url + ":" + e);
url = null;
}
}
//在此加入自己的过滤器:如定义MyUrlFilter
//即可以如此判断:
// if(url != null){
// url = MyUrlFilter.filter(url);//处理掉不要的url
// }
//如果两次过滤都符合要求规则,则为有效URL
if (url != null) { // if it passes
newKey.set(url); // collect it
output.collect(newKey, value);
}
}
更多交流:
垂直搜索QQ:群:55388905
最近自己的小项目:http://www.lsoba.com
分享到:
相关推荐
Nutch1.0的API,不过注意没有搜索功能
Nutch 是一个开源的、Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。
### Eclipse中编译Nutch-1.0:深入解析与实践指南 #### 一、环境准备与基础构建 在Linux环境中使用Eclipse编译Nutch-1.0,首要任务是确保开发环境满足项目需求。这包括确认Eclipse的JDK、JRE版本至少为1.6或更高...
Nutch 是一个开源Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。包括全文搜索和Web爬虫。
Nutch 是一个开源Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。包括全文搜索和Web爬虫。
Nutch 是一个开源Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。包括全文搜索和Web爬虫。
Nutch 是一个开源Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。包括全文搜索和Web爬虫。
Nutch-1.5.1源码是Apache Nutch项目的一个重要版本,它是一个高度可扩展的、开源的网络爬虫和全文搜索引擎框架。Nutch最初由Doug Cutting创建,后来成为了Hadoop项目的一部分,因为其在大数据处理和分布式计算方面的...
Nutch1.0是一款著名的开源网络爬虫项目,它的主要目标是提供一个可扩展、高效且可靠的搜索引擎解决方案。在这个特定的“Nutch1.0修改版”中,开发者已经对原始代码进行了调整,以整合中文分词功能。这使得Nutch能够...
Nutch 是一个开源的、Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。 nutch 1.0
Nutch的设计目标是易用性和可扩展性,允许用户通过简单的配置就能实现复杂的网页抓取任务。 在Nutch-1.9中,主要包含以下几个核心知识点: 1. **爬虫框架**:Nutch是一个基于Java的爬虫框架,它提供了完整的爬取、...
《Nutch源码分析——深入理解tar和zip格式》 Nutch是一款开源的网络爬虫项目,它在大数据处理和搜索引擎构建领域具有广泛的应用。本文将深入探讨如何获取和理解Nutch的源码,以及涉及的tar和zip两种常见的文件压缩...
Nutch 是一个开源的、Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。 nutch 1.0
Nutch 是一个开源的、Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。 nutch 1.0
Nutch-1.0分布式安装手册是一份详细指导如何在多台计算机上部署和配置Apache Nutch的文档。Apache Nutch是一款开源的网络爬虫软件,用于抓取互联网上的网页并进行索引,是大数据领域中搜索引擎构建的重要工具。这份...
Nutch的源码可能包含爬虫的配置、数据存储、URL管理和分发等功能。虽然这个压缩包未提供Nutch的源码,但在学习Lucene的同时,了解Nutch将有助于理解一个完整的搜索引擎是如何工作的,包括网页抓取、预处理、索引和...
Nutch 源码的分析和理解对于想要深入研究搜索引擎工作原理、网页抓取技术和大数据处理的开发者来说至关重要。 在`apache-nutch-2.2.1`这个压缩包中,你将找到以下关键组成部分: 1. **源代码结构**:Nutch 的源...
nutch-1.0-dev.jar nutch devlope
本文将深入探讨基于Java的开源搜索引擎框架——Lucene和Nutch,以及如何通过源码学习它们的开发实践。 Lucene是一个全文检索库,它提供了一个简单的API,开发者可以使用这些API来构建自己的搜索功能。Lucene的核心...
2. **URL 管理**:Nutch 使用 URL 数据结构来管理和跟踪已经抓取和待抓取的网页。这部分代码涉及 URL 的存储、去重、优先级排序等算法。 3. **爬行策略**:Nutch 实现了基于 PR(PageRank)的爬行策略,通过分析...