4

我想下载使用 javascript 输出数据的网页。Wget 可以做其他所有事情,但运行 javascript。

甚至像:firefox -remote "saveURL(www.mozilla.org, myfile.html)"

会很棒(不幸的是,这种命令不存在)。

4

5 回答 5

4

我会看看 selenium 浏览器自动化工具 ( http://seleniumhq.org/ ) - 您可以自动访问网页,并保存生成的 HTML。

我们在之前的项目中使用它来实现类似的目的,取得了巨大的成功。

于 2009-03-24T23:16:33.440 回答
1

我赞同 Alex 对 Selenium 的建议。它在浏览器中运行,因此它可以在 Javascript 修改 DOM 后捕获输出 HTML。

于 2009-03-24T23:55:32.553 回答
1

使用浏览器驱动的方法的问题是很难自动化抓取过程。

在您最喜欢的编程语言中寻找“无头浏览器”。或者,您可以使用Jaxer加载 DOM 服务器端,执行 JavaScript 并让它操作 DOM,然后使用您已经熟悉的相同 JavaScript 抓取修改后的 DOM。这将是我的首选方法。

于 2009-03-25T08:13:47.673 回答
0

如果它可以是基于 Windows 的应用程序,您可以尝试使用任何编程语言(如 C#、Visual Basic、Delphi 等)的浏览器组件来加载页面,然后查看内容并保存。浏览器组件应基于 IE 渲染引擎,并应支持 JavaScript。这里有一个关于网站快照的问题。可能对你有些用处。

或者,您可以考虑构建自己的 Firefox 扩展。在这里查看更多详细信息(没有“下一步”按钮,只有左侧用于导航的菜单,起初让我感到困惑)。

于 2009-03-24T23:23:14.453 回答
0

我在使用之前已经这样做了:

于 2010-03-17T06:26:38.263 回答