Удалить коды JavaScript при разборе веб-страницы - PullRequest
4 голосов
/ 09 ноября 2011

При захвате содержимого веб-страницы с помощью CURL или file_get_contents, какой самый простой способ удалить встроенные коды javascrip.Я думаю о регулярных выражениях, чтобы удалить все между тегами;но регулярное выражение не является надежным методом для этой цели.

Есть ли лучший способ для анализа HTML-страницы (просто удаление кодов JavaScript)?Если регулярное выражение по-прежнему является лучшим вариантом, какая команда является наиболее надежной для этого?

1 Ответ

2 голосов
/ 09 ноября 2011

Вы можете использовать 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();
?>
...