php – 在解析网页时删除javascript代码

通过CURL或file_get_contents捕获网页内容时,删除内联
javascrip代码的最简单方法是什么.我正在考虑正则表达式删除标签之间的所有内容;但正则表达式不是一个可靠的方法.

有没有更好的方法来解析一个HTML页面(只是删除javascript代码)?如果正则表达式仍然是最佳选择,那么最可靠的命令是什么?

最佳答案 您可以使用
DOMDocument及其
removeChild()功能.像下面这样的东西应该让你去.

<?php

$doc = new DOMDocument;
$doc->load('index.html');

$page = $doc->documentElement;

// we retrieve the chapter and remove it from the book
$scripts = $page->getElementsByTagName('script');
foreach($scripts as $script) {
   $page->removeChild($script);
}

echo $doc->saveHTML();
?>
点赞