1

我想使用托管在Heroku上的Watir生成 HTML 快照。

Google's Full Specification for Making AJAX Applications Crawlable建议使用HTMLUnit ...请参阅如何创建 HTML 快照?第 3 点。

HtmlUnit 是一个纯 Java 的无头浏览器模拟器;不幸的是,jRuby 不是 Heroku 的一个选项。所以 HtmlUnit 被排除在外(据我所知)。

如果您有兴趣,我还有另一个关于 HtmlUnit 作为托管在 Google App Engine 上的服务的问题... 使 AJAX 应用程序可抓取?如何在 Google App Engine 上构建一个简单的 Web 服务来生成 HTML 快照?...仍在等待经过验证的示例/答案。

4

3 回答 3

14

是的你可以

将 Watir 与无头的 PhantomJS 一起使用

browser = Watir::Browser.new :phantomjs

要在 Heroku 上使用 PhantomJS,您需要使用Heroku PhantomJS buildpack

于 2013-07-24T20:42:48.427 回答
3

Troelskin 的回答是不正确的。有多种方法可以使用 Watir 运行“无头”浏览器,这些浏览器不需要“完整的桌面环境”。话虽如此,我不知道哪种方法可能适合 Heroku。

其他“无头”自动化选项(如果您使用 Ruby)是带有 Open-Uri 的机械化,以及(可选)Nokogiri。

于 2013-05-06T17:05:31.780 回答
1

不,您需要一个完整的桌面环境才能运行 watir。Heroku 没有为您提供这些。

您可以使用 Amazon EC2 等服务

于 2010-09-04T22:15:07.250 回答