【问题标题】:Retrieving a javascript processed Web page检索 javascript 处理的网页
【发布时间】:2011-04-03 10:38:03
【问题描述】:

我想要的是能够通过谷歌 Chrome 或 Firefox 下载渲染/处理的页面。

例如,我不想要:

hendry@x201 ~$ w3m -dump http://hello.dabase.com
FAIL

我想要:

$ $answer http://hello.dabase.com
Hello World

【问题讨论】:

  • 换句话说,您想用浏览器处理页面并检索最终的 DOM 树。但是,alert()、ajax 请求、setInterval()/setTimeout() 呢?
  • 呃,不够简单/不够通用
  • 这里真正的应用是什么?对我来说看起来像unix?我想知道为什么涉及 Javascript
  • 旧版本的 links2 支持 Javascript。

标签: javascript download


【解决方案1】:

您应该可以使用PhantomJS 来完成此操作。它运行的是没有视觉效果的 WebKit,但您可以获得对 JavaScript、HTML/DOM、CSS、SVG、Canvas 和许多其他方面的相同快速和原生支持。

免责声明:我启动了 PhantomJS。

【讨论】:

    【解决方案2】:

    可能还为时过早,但有人将 V8 移植到 Go-lang,所以现在您可以编写自己的客户端来使用这个强大的组合:

    http://bravenewmethod.wordpress.com/2011/03/30/embedding-v8-javascript-engine-and-go/

    看起来很简单,不需要丑陋的 Java/Rhino 堆栈,并采用了下一代大型编程语言。

    【讨论】:

      【解决方案3】:

      它看起来类似于http://simile.mit.edu/wiki/Crowbar 试图解决的问题。

      【讨论】:

        【解决方案4】:

        你可以使用 jsdom:- https://github.com/tmpvar/jsdom

        我会为它构建一个节点驱动程序,但它应该可以与 Rhino 等一起使用。

        【讨论】:

          【解决方案5】:

          我会看看Rhino

          我会结合使用优秀的env.js 库和Rhino 来尽可能多地模拟浏览器环境。一旦你实现了一些网络蜘蛛引导代码,你应该能够获得上面想要的结果。

          不过,我会对其他解决方案感兴趣。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2012-10-23
            • 2014-10-31
            • 1970-01-01
            • 2016-05-30
            • 1970-01-01
            • 2015-07-12
            • 2010-12-05
            相关资源
            最近更新 更多