Maison > développement back-end > tutoriel php > Comment extraire un texte spécifique du HTML à l'aide de DOMDocument et XPath de PHP ?

Comment extraire un texte spécifique du HTML à l'aide de DOMDocument et XPath de PHP ?

DDD
Libérer: 2024-11-01 13:00:03
original
472 Les gens l'ont consulté

How do I extract specific text from HTML using PHP's DOMDocument and XPath?

Analyser le HTML avec le DOMDocument de PHP

Pour extraire des éléments de texte spécifiques du HTML à l'aide du DOMDocument de PHP, exploiter les requêtes XPath peut être plus efficace que de s'appuyer uniquement sur sur DOMDocument :: getElementsByTagName. Les requêtes XPath permettent une sélection précise basée sur des critères spécifiques au sein de la structure du document.

Capturer du texte à partir de DIV imbriqués

L'exemple HTML fourni contient des fichiers

balises, où le texte cible se trouve dans
éléments de classe "text", qui sont à leur tour imbriqués dans
éléments avec la classe "main".

Pour capturer le texte cible, une requête XPath peut être utilisée :

<code class="php">$xpath->query('//div[@class="main"]/div[@class="text"]');</code>
Copier après la connexion

Cette requête sélectionne tous les éléments

les éléments dont l'attribut de classe est défini sur "text" et qui sont des descendants de
éléments avec un attribut de classe défini sur "main". Le résultat est une liste des éléments correspondants.

Itération et extraction des valeurs de nœud

Pour accéder au contenu textuel réel, chaque élément correspondant peut être itéré et sa valeur de nœud propriété accessible :

<code class="php">foreach ($tags as $tag) {
    var_dump(trim($tag->nodeValue));
}</code>
Copier après la connexion

La fonction trim() est utilisée pour supprimer tout espace de début ou de fin du texte extrait.

Sortie d'exécution

L'exécution du code affichera ce qui suit :

string 'Capture this text 1' (length=19)
string 'Capture this text 2' (length=19)
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal