【问题标题】:Web crawler with incremental crawling support for windows具有对 Windows 的增量爬取支持的 Web 爬虫
【发布时间】:2014-09-22 12:13:13
【问题描述】:
我需要一个用java开发的开源网络爬虫,支持增量爬取。
网络爬虫应该易于定制并与 solr 或 elasticsearch 集成。
它应该是一个活跃的,正在进一步发展,具有更多功能。
-
Aperture 是一款优秀的爬虫,它具有我提到的所有功能,但它不是一个活跃的爬虫,并且由于许可证(如果我将其用于商业目的)我忽略了它们的依赖关系。
Nutch - 一个网络爬虫,它具有更多的特性,支持 hadoop。但是我浏览了许多网站和教程,没有合适的文档,找到用于在 Windows 中以编程方式自定义它的 api。我可以在 eclipse 中编辑代码,但是在运行 map reduce 作业时会导致很多错误。 nutch 没有 java api 可以像光圈一样实现。
Crawl4j 是一个很好的网络爬虫,但它没有增量爬取功能,而且我没有检查许可证问题。
是否有任何其他爬虫具有我提到的所有功能,或者有什么方法可以使用上述任何一种爬虫来满足我的要求?
非常感谢您提供有用的答案。
【问题讨论】:
标签:
java
solr
web-crawler
nutch
crawler4j
【解决方案1】:
看起来很适合Norconex HTTP Collector:
- 它是 100% 用 Java 编写的。
- 它可以在 Windows 上完全运行(无需 Cygwin 或 Linux/Unix VM)。
- 有很好的文档记录,其中包含示例和提问/提出问题的论坛 (github)。
- 它支持增量爬取,检测修改的文档以及删除的文档。
- 它支持 Solr 和 Elasticsearch 等(通过使用其“提交者”)。
- 它具有广泛的可配置性/灵活性。它很容易与它集成并为其提供自定义功能,而无需学习复杂的插件机制(实现一个接口,将其放在类路径中,然后瞧)。
- 它的发展非常活跃。
它由企业搜索专家公司 Norconex 维护。问题迅速解决。 2.0.0 版正在大力开发,很快就会带来许多新功能(语言检测、文档拆分等)。
它是 GPL,但如果 GPL 对您有问题,Norconex 会提供商业许可。
它还具有许多您未列出的其他功能,例如在将文档内容发送到搜索引擎之前对其进行操作的能力。它还支持站点地图、机器人规则等。我邀请您尝试一下:http://www.norconex.com/product/collector-http/