0

我正在开发一个产品,我们需要一个功能来抓取用户给定的 URL 并发布他单独的移动站点。在爬取过程中我们要爬取网站内容、CSS、图片和脚本。该产品用于执行更多活动,例如安排一些营销活动等等。我想问的——

执行此任务的最佳实践和开源框架是什么?

我们应该在应用程序本身中执行此操作,还是应该有另一个服务器来执行此活动(如果此活动需要负载)?请记住,我们每个月都会有 1 个“缺乏”的用户从网站上发布他的移动网站,以及大约 1-2k 的并发用户。

该应用程序是在 Java 和 Java EE 平台中构建的,使用 Spring 和 Hibernate 作为服务器端技术。

4

2 回答 2

1

我们使用 Derkley DB Java 版本来管理堆外链接队列,以抓取和区分待下载链接和尚未下载的链接。

对于解析 HTML TagSoup 是野生互联网中的最佳选择。

Batik 是解析 CSS 和 SVG 的选择。

PDFBox 很棒,可以从 PDF 中提取链接

Quartz 调度器是经过行业验证的事件调度选择。

是的,您将需要一台或多台服务器进行爬网,一台服务器用于聚合结果和调度任务,可能还需要另一台服务器用于 WEB 前端和后端。

这适用于http://linktiger.comhttp://pagefreezer.com

于 2012-08-27T08:07:51.250 回答
0

我正在实施一个基于Selenium HtmlUnit Driver的爬行项目。我认为它确实是自动化无头浏览器的最佳 Java 框架。

于 2012-08-27T08:13:29.117 回答