现在做Heritrix抓取,由于java版本之类的,我选择用了3.1,可是大部分的资料都是介绍1.14的,太让人生气,尤其一个最简单的功能:让保留的文件是和这个域名下有关的文件,不要被js那些抽取的链接又访问到其他站点抓取。在1.14版本,已经非常多的扩展代码等,可是完全和3.1不同。
在这个前提下,我感觉是可以写个扩展替换的,我这里直接再源码中修改了,所改动的文件是 org.archive.crawler.postprocessor.CandidatesProcessor
写道
protected boolean shouldProcess(CrawlURI puri) {
//return true;
String uris;
uris=puri.toString();
//System.out.println("======>2"+uris);
if (uris.contains("**域名 关键字等")){
return true;
}
return false;
}
//return true;
String uris;
uris=puri.toString();
//System.out.println("======>2"+uris);
if (uris.contains("**域名 关键字等")){
return true;
}
return false;
}
我也搞不清true false具体代表什么,代码结果显示false是不执行抓取,true是执行抓取
相关推荐
### Heritrix 3.1 官方指导手册 #### 一、简介 Heritrix 是互联网档案馆推出的一款开源、可扩展、可伸缩、具备高质量归档能力的网络爬虫工具。它旨在帮助用户高效地从互联网上抓取数据,并将其归档保存。Heritrix ...
Heritrix 3.1是互联网档案馆开发的一款开源网络爬虫工具,专门用于抓取和保存网页。这款强大的爬虫软件广泛应用于学术研究、数据分析、网站备份等多个领域。了解Heritrix 3.1的默认配置以及类之间的关系对于有效使用...
- **URL管理**:Heritrix使用URL队列来管理待抓取的链接,并且可以设置URL过滤规则,避免重复抓取或不符合条件的URL。 - **内容解析**:Heritrix内置了HTML、XML、PDF等多种格式的解析器,可以解析网页内容并提取出...
Heritrix 使用XML配置文件来控制爬取行为,包括种子URL、抓取策略、爬虫行为设置等。开发者可以根据需求修改这些配置文件,实现特定的爬取任务。 运行与监控: 在 `dist` 目录下,你可以找到启动脚本和监控界面的...
例如,指定要抓取的网站URL、抓取深度、过滤规则等。 #### 三、Heritrix的功能特点 - **定制化抓取** 用户可以根据需要定制抓取策略,比如限制抓取速度、设置抓取范围等。 - **智能调度** Heritrix支持智能的...
Heritrix支持定制化的爬取策略,可以设置爬取深度、URL过滤规则等。 2. **Heritrix架构**:Heritrix采用模块化设计,包括种子管理器、URI调度器、爬取策略、处理器链、存储模块等。每个模块都有其特定功能,如种子...
用户可以通过配置文件定义爬取规则,例如深度限制、URL过滤、爬取频率等,以适应各种复杂的抓取需求。 在使用Heritrix时,"heritrix-1.14.0"这个压缩包文件包含了一系列必要的组件和库,包括核心爬虫引擎、解析器、...
它能够按照预定义的规则抓取网页,这些规则包括URL过滤、深度限制、爬行频率控制等。Heritrix支持HTTP、HTTPS等多种协议,以及处理各种重定向和会话管理。 在Heritrix 1.14.2中,用户可以通过XML配置文件来定制爬行...
在Heritrix 3.0和3.1版本中,引入了一个基于Spring-container的配置系统,这使得设置管理更加灵活。此外,3.X版本的另一个显著改变是采用了一种新的模型,允许在同一个作业目录下重启作业,而无需每次都创建新的作业...
Heritrix的配置文件允许你定制爬虫的行为,比如设置爬取深度、定义过滤规则以及指定目标URL。 2. **heritrix-3.1.0-src.zip**:这个文件包含了Heritrix的源代码,适合开发者或者希望对软件进行定制的用户。通过源...
### Heritrix源码分析(十一):Heritrix中的URL——CandidateURI和CrawlURI #### 一、概述 Heritrix是一款开源的网络爬虫工具,它主要用于归档和备份网页数据。Heritrix的设计非常灵活且可扩展性强,能够支持多种...
3. **配置与策略**:Heritrix通过XML配置文件定义爬取行为,如设置种子URL、选择爬取策略、过滤规则等。策略可以定制,比如深度优先、广度优先、基于链接关系的爬取等。 4. **链接管理**:Heritrix使用Crawler-...
Heritrix的一个特性是其url队列管理机制。默认情况下,所有属于同一hostname的URL会被放入同一个队列,导致只有一个线程在工作。为了解决这个问题,可以使用如ELF哈希算法来平均分配URL到不同的队列,从而实现更有效...
5. **过滤与规则**: 可以通过`CrawlRules`定义抓取范围,如只抓取特定MIME类型的文件,或者通过正则表达式排除某些URL。同时,还可以配置`CrawlDatumFilters`来过滤不需要的数据。 6. **存储与归档**: Heritrix可以...
Heritrix支持通过XML配置文件来定义爬取规则,包括深度限制、URL过滤、重试策略等。此外,它还提供了一个命令行界面和Web管理界面,方便监控和控制爬虫的运行状态。 在运行Heritrix时,需要注意的常见问题包括: - ...
- 配置爬取任务的相关参数,如种子URL、爬取深度等。 4. **监控任务进度**: - 通过WebUI监控爬取任务的实时进度。 - 查看爬取到的数据和日志信息。 #### 五、常见错误与解决办法 - **启动失败**: - 检查配置...
在Heritrix中,爬虫的主要工作流程包括种子管理、URL过滤、内容下载、解析、存储等步骤。种子管理负责启动爬行过程,通常由一组初始URLs开始。URL过滤则依据预设的规则或策略,决定哪些URLs应该被访问,哪些应被忽略...
3. **编写过滤器**:Heritrix支持自定义URL过滤规则,通过编写过滤器代码,可以决定哪些网址被爬取,哪些被排除。 4. **配置过滤器**:在Heritrix的配置文件中,指定编写好的过滤器,使其在爬行过程中生效。 【爬虫...
4. **配置文件**:Heritrix使用XML配置文件定义爬虫的行为,包括URL种子、爬取策略、过滤规则等。熟悉这些配置文件对于有效控制爬虫的行为至关重要。 5. **命令行界面(CLI)**:用户通过命令行与Heritrix交互,...
Heritrix的核心是工作流模型,它将爬取过程分为多个阶段,如URL发现、下载、解析、存储等。每个阶段都可以通过编写或选择合适的处理器来实现。Heritrix支持多种协议,包括HTTP、HTTPS、FTP等,并且能够处理各种MIME...