繁体   English   中英

在所有JS执行之后是否可以获得页面的DOM结构?

[英]Is it possible to get the DOM structure of a page after all JS executes?

使用cURL或(在PHP中)流上下文/ file_get_contents来获取页面的起始HTML标记是非常简单的,但如今,即使您获得了页面的起始标记,也有许多页面受到JS的严格控制。 ,您仍然无法轻易确定页面的实际外观(因为页面的大部分由运行客户端的JS组成)。

这样,是否可以通过使用cURL等来执行页面的所有加载JS之后,获取页面的整个DOM结构?

(作为额外的信息,我知道您可以使用Chrome开发人员工具等获取DOM结构,但是我想知道是否有任何方法可以使该过程自动化。)

非常感谢你。

您必须在浏览器中运行它,然后获取document.documentElement.outerHTML的内容。

我认为这不可能仅在PHP中实现。 您必须使用:

  • phanthomJS

    PhantomJS是可使用JavaScript API编写脚本的无头WebKit。 使用标准DOM API或jQuery之类的常用库访问和操作网页。

  • SlimerJS

    SlimerJS与PhantomJs类似,除了它运行Mozilla Firefox的浏览器引擎Gecko而不是Webkit之外。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM