Question

Je suis en train d'écrire un grattoir web en utilisant simplehtmldom. Je veux obtenir une étiquette en recherchant le contenu de la balise. Ceci est le texte en clair à l'intérieur, pas le type d'étiquette. Ensuite, une fois que j'ai l'étiquette en recherchant le contenu de son texte que je veux obtenir la balise suivante après.

Comment puis-je trouver une étiquette basée sur son contenu? Et une fois que je l'ai comment puis-je trouver la balise suivante?

Toute aide serait appréciée.

Merci.

Était-ce utile?

La solution

Ce qui suit vous permettra de rechercher tous les nœuds de texte, puis atteindre la balise suivante:

// Use Simple_HTML_DOM special selector 'text'
// to retrieve all text nodes from the document
$textNodes = $html->find('text');
$foundTag = null;

foreach($textNodes as $textNode) {
    if($textNode->plaintext == 'Hello World') {
        // Get the parent of the text node
        // (A text node is always a child of
        //  its container)
        $foundTag = $textNode->parent();
        break;
    }
}

if($foundTag) {
    $nextTagAfter = $foundTag->next_sibling();
}

Ce n'est pas votre première question sur base Simple_HTML_DOM utilisation. Vous pouvez lire la documentation officielle .

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top