如何使用PHP获得已加载的操纵的HTMLdom?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (74)

我试着用PHP获得一个加载和Javascript操纵的HTMLdom。但它只返回文档内容。

例如:

index.php
$dom = new DOMDocument();
$dom->load('test.html');
$html = $dom->getElementsByTagName("html")->item(0);
echo $html->nodeValue;

结果:

title
var test = document.createElement("div");
test.innerHTML = "test";
document.body.appendChild(test);

我想得到:

<head>
<title>title</title>
</head>
<body>
<div>test</div>
</body>
提问于
用户回答回答于

你不能。至少,不仅仅是使用PHP。PHPDOM扩展不包括Javascript解释器;它只报告HTML文件的文字内容。

可以将文档加载到无头浏览器中,例如PhantomJS。 但这将是一项更多的工作,如果不使用PHP标准库之外的大量软件,这是不可能的。

扫码关注云+社区

领取腾讯云代金券