可以执行JavaScript的服务器端浏览器
是否有任何编程库可以解析HTML文档,执行JavaScript然后允许我导航DOM? 这需要在服务器端执行,而不是在客户端执行。 任何语言都可以,但Java,PHP或Ruby是首选。
在java中: http : //lobobrowser.org/cobra/java-html-parser.jsp
这是一个支持Javascript的CSS识别HTML解析器
与您的问题相关的最重要的function:它是Javascript感知的。 解析期间发生的DOM修改将反映在生成的DOM中。
您是否尝试过将浏览器引入服务器 ?
Java支持使用Rhino的javascript,同时查看服务器端javascript解决方案的这个页面: http : //en.wikipedia.org/wiki/Server-side_JavaScript
对于Java,请务必查看HtmlUnit和HttpUnit 。
PhantomJS执行此操作,可以与任何服务器端语言一起使用。 请参阅下面的NodeJS和PHP的一些集成模块
的NodeJS
https://npmjs.org/package/node-phantom
https://github.com/sgentle/phantomjs-node
PHP
PHP有DOMDocument用于导航DOM。 我还没有听说过执行JavaScript的任何事情。
从这篇文章开始,然后点击链接。 或者只是搜索Rhino。
现在有几个项目可以很好地完成这项工作:
-
PhantomJS是WebKit的无头版本,并且有一些有用的包装器,如CasperJS 。
-
Zombie.js是用Javascript(Node.js)编写的jsdom包装器。
您需要编写JavaScript代码才能与这两个项目进行交互。 到目前为止,我更喜欢Zombie.js,因为它更容易设置,并且您可以在代码中使用任何Node.js / npm模块。
node.js?
Node可以在其控制台中运行任何javascript文件。 我会首先尝试节点,看看它是否可以做你想要的,因为它可能拥有最大的用户群和文档。