【问题标题】:Replacement for Jaxer for parsing/crawling websites用于解析/抓取网站的 Jaxer 替代品
【发布时间】:2026-02-12 14:40:01
【问题描述】:

我有一个(前)同事几年前用 Jaxer 写的旧工具,我想替换/重写。

Jaxer 是一个(废弃的)服务器端框架,基于无头 Mozilla/Gecko 浏览器,允许您使用 JavaScript 和 DOM 服务器端。

由于 Jaxer 已被废弃,而且我在新计算机上安装和运行带有 Jaxer 的 Aptana Studio 1.5 时遇到了很大问题,因此我正在寻找可以作为新版本基础的库/框架/东西。

此工具仅在 Aptana Studio(Jaxer 的 IDE)内本地运行,并且从未打算成为实际的 Web 应用程序。它通过将客户的网站逐页加载到服务器端 Mozilla 中来抓取他们的网站。为了做到这一点,它使用 jQuery 和预定义的 CSS 选择器来查找菜单中的链接并解析页面中的其他信息。最终的结果基本上是一个美化的站点地图。

如果可能的话,我想保留这种操作方式并继续使用 jQuery/JavaScript/DOM 来加载和解析/访问页面,但它可以包装在基于另一种语言(如 Java)的框架中。我考虑过自己写一些基于 Gecko 的东西,但这似乎有点过头了,所以我愿意接受其他建议。

【问题讨论】:

    标签: java html-parsing web-crawler jaxer


    【解决方案1】:

    就 HTML 抓取/解析而言: http://ccil.org/~cowan/XML/tagsoup/

    http://jsoup.org/

    【讨论】:

    • TagSoup 在这里并不是很有用,因为作为 SAX 解析器,我不能使用 XPath 或 CSS,我必须单独编写/脚本例程来查找我需要的信息(或者是我错了吗?)。然而,jsoup 看起来很有希望,因为它支持 CSS 选择器。非常好!