Я разбираю html и не хочу включать теги заголовка img элемента заголовка

Ниже приведен код, написанный в функции PHP. Прямо сейчас я получаю все img src всего HTML. Я просто хочу иметь тег img всего html, кроме тегов, присутствующих в заголовке.

$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
$data = curl_exec($ch);
$doc = new DOMDocument();
@$doc->loadHTML($data);
$finder = new DomXPath($doc);
$nodes_images = $finder->query("//img/@src");

person Umair    schedule 13.01.2020    source источник


Ответы (1)


Если вы имеете в виду элемент header HTML5, то использование //img[not(ancestor::header)]/@src должно выбирать все атрибуты src всех элементов img, которые не являются потомками элемента header. Однако я не знаю, насколько хорошо синтаксический анализ HTML на основе libxml2, используемый PHP loadHTML, поддерживает синтаксический анализ HTML5.

person Martin Honnen    schedule 13.01.2020
comment
Я хочу получить src всех тегов img html, кроме тех, которые присутствуют в элементе ‹header›. Заголовок включает в себя меню, логотип и иконки социальных сетей. - person Umair; 13.01.2020