«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как извлечь текст из конкретных тегов HTML с использованием Domdocument и XPath?

Как извлечь текст из конкретных тегов HTML с использованием Domdocument и XPath?

Опубликовано в 2025-03-10
Просматривать:376

How to Extract Text from Specific HTML Tags Using DOMDocument and XPath?

parsing html с PHP Domdocument и Xpath

При попытке проанализировать HTML с использованием PHP Domdocument, общий вопрос - это определенный текст в тегах определенных классов. Использование domdocument :: getelementsbytagname не может быть недостаточно в таких случаях.

для захвата конкретного текста в тегах целевого класса, рекомендуется альтернативный подход, использующий Domdocument и domxpath. Domxpath позволяет мощным запросам xPath для поиска элементов на основе их атрибутов и структуры.

]

рассмотрим следующее html:

Capture this text 1
Capture this text 2

, чтобы получить текст в тегах

с помощью class = "text", которые являются потомками тегов
с помощью class = "main", следуйте этим шагам:
php
$html = 
    
Capture this text 1
Capture this text 2
HTML; $dom = new DOMDocument(); $dom->loadHTML($html); $xpath = new DOMXPath($dom); $tags = $xpath->query('//div[@class="main"]/div[@class="text"]'); foreach ($tags as $tag) { var_dump(trim($tag->nodeValue)); }

этот фрагмент кода будет выходить извлек Строка «Укачите этот текст 2 '(длина = 19)

string 'Capture this text 1' (length=19)
string 'Capture this text 2' (length=19)
]
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3