我需要为第 3 方网站构建一个小型“监控”抓取工具(这是一个包含我们访问者统计信息的外部网站)。
不幸的是,这个网站很难通过正常的“wget”机制进行抓取,因为它使用了大量复杂的 JS,其中一部分是由 GWT 生成的。所以我的解决方法是创建一个 GreaseMonkey 脚本,然后让这个脚本调用一个 PHP 页面来记录抓取的数据。然后,只要 Firefox 启动这个网页到抓取,脚本就会开始工作。
这很好用,但现在我正在努力使它在监控工具方面更加稳健。我希望它使用 cron 作业在服务器上运行。据我了解,这需要设置一个 DISPLAY 变量并存在一个 X session (Firefox 拒绝为我运行)。有没有什么好的方法可以让它作为 cron 作业从 batchuser 帐户运行?
最佳答案
我做了类似的事情来让 Selenium 在服务器上无外设地运行。我用的是 Xvfb。
http://en.wikipedia.org/wiki/Xvfb
这篇文章有一些在 Firefox 上使用 Xvfb 的技巧:
关于javascript - 在没有 GUI/X session 的情况下使用 GreaseMonkey 脚本运行 Firefox 的任何方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2109570/