Ich verwende einen Crawler, um den HTML-Inhalt bestimmter Seiten im Internet abzurufen. Im Moment habe ich den gesamten HTML-Code in einer einzigen PHP-Variablen gespeichert:Wie extrahiert man nur bestimmte Tags aus einem HTML-Dokument mit PHP?
$string = "<PRE>".htmlspecialchars($crawler->results)."</PRE>\n";
Was ich tun möchte, ist wählen Sie alle „p“ Tags (zum Beispiel) und speichern ihre in einem Array. Was ist der richtige Weg, das zu tun?
Ich habe Folgendes versucht, mit Xpath, aber es zeigt nichts (wahrscheinlich, weil das Dokument selbst ist kein XML, ich kopiere einfach das Beispiel in seiner Dokumentation gegeben).
$xml = new SimpleXMLElement ($string);
$result=$xml->xpath('/p');
while(list(, $node)=each($result)){
echo '/p: ' , $node, "\n";
}
Hoffentlich jemand mit (viel) mehr Erfahrung in PHP wird mir zu helfen in der Lage: D
Dies Ihnen helfen kann: http://simplehtmldom.sourceforge.net/ –
Vielen Dank! Das sieht nach einer wirklich soliden und eleganten Lösung aus. Werde mich sofort darum kümmern! – Eugen
Kein Problem. Obwohl es nicht perfekt ist, scheint es die meiste Zeit zu funktionieren. –