Wie extrahiere ich mit DOMDocument und XPath von PHP bestimmten Text aus HTML?

DDD
Freigeben: 2024-11-01 13:00:03
Original
375 Leute haben es durchsucht

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

HTML mit PHPs DOMDocument analysieren

Um bestimmte Textelemente aus HTML mit PHPs DOMDocument zu extrahieren, kann die Nutzung von XPath-Abfragen effektiver sein, als sich allein darauf zu verlassen auf DOMDocument::getElementsByTagName. XPath-Abfragen ermöglichen eine präzise Auswahl basierend auf bestimmten Kriterien innerhalb der Dokumentstruktur.

Erfassen von Text aus verschachtelten DIVs

Der bereitgestellte Beispiel-HTML enthält verschachtelte

Tags, bei denen sich der Zieltext innerhalb von
befindet. Elemente mit der Klasse „text“, die wiederum innerhalb von
verschachtelt sind. Elemente mit der Klasse „main“.

Um den Zieltext zu erfassen, kann eine XPath-Abfrage verwendet werden:

<code class="php">$xpath->query('//div[@class="main"]/div[@class="text"]');</code>
Nach dem Login kopieren

Diese Abfrage wählt alle

Elemente, deren Klassenattribut auf „text“ gesetzt ist und die Nachkommen von
sind. Elemente mit einem Klassenattribut, das auf „main“ gesetzt ist. Das Ergebnis ist eine Liste der übereinstimmenden Elemente.

Iterieren und Extrahieren von Knotenwerten

Um auf den tatsächlichen Textinhalt zuzugreifen, kann jedes übereinstimmende Element über seinen Knotenwert iteriert werden Eigenschaft, auf die zugegriffen wird:

<code class="php">foreach ($tags as $tag) {
    var_dump(trim($tag->nodeValue));
}</code>
Nach dem Login kopieren

Die Funktion trim() wird verwendet, um alle führenden oder nachgestellten Leerzeichen aus dem extrahierten Text zu entfernen.

Ausführungsausgabe

Beim Ausführen des Codes wird Folgendes ausgegeben:

string 'Capture this text 1' (length=19)
string 'Capture this text 2' (length=19)
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie extrahiere ich mit DOMDocument und XPath von PHP bestimmten Text aus HTML?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!