除了 SeleniumRC 之外,还有什么好的工具可以获取包含 JavaScript 后绘制内容的网页吗?

除了 SeleniumRC 之外,还有什么好的工具可以获取包含 JavaScript 后绘制内容的网页吗?

它的一个主要缺点curl是,越来越多的网页的主要内容是由在初始 HTTP 响应之后发生的 JavaScript AJAX 响应绘制的。curl从来没有注意到这个后绘制的内容。

因此,为了从命令行获取这些类型的网页,我只能用 Ruby 编写脚本来驱动 SeleniumRC 启动 Firefox 实例,然后在这些 AJAX 调用完成后返回源 HTML。

对于此类问题,最好有一个更精简的命令行解决方案。有谁知道吗?

答案1

你考虑过瓦蒂尔吗?

http://watir.com/

添加该包后,您可以将其作为独立文件运行irb,也可以在 后逐行运行include 'watir-webdriver'。我发现它的响应速度比 更快selenium-webdriver,但没有测试记录 GUI 来帮助计算复杂的测试条件。

答案2

我最近刚刚开始在 Java 中使用 Selenium 2 的 WebDriver。有一个名为 HtmlUnitDriver 的驱动程序,它完全支持 JavaScript,但不会启动实际的浏览器。

这不是一个简单的解决方案,但它确实可以完成工作。

我设计了从命令行运行的代码并将网络数据保存到文件中。

相关内容