obtenir du texte d'un document HTML à l'aide de HtmlAgilityPack via XPath

c# html-agility-pack xpath

Question

J'ai HTML suivant dans un fichier, je charge ce fichier dans un HTMLDocument utilisant HtmlAgilityPack

Le problème est que je veux seulement obtenir Hello World! en utilisant XPath et non le texte intérieur.

Comment est-ce que je réalise ceci?

<ul>
    <li>
        Hello world!
        <ul>
            <li>
                Welcome to planet!
            </li>
        </ul>
    </li>
</ul>

Réponse acceptée

Le XPath:

//ul/li[1]/text()

Devrait sélectionner le texte "Hello World!"

Vous pouvez ensuite sélectionner la valeur de ce nœud.

Utilisé:

//ul/li[1]/text()

En gros, cela indique qu'il faut naviguer vers un nœud ul, sélectionner le premier li, puis sélectionner le nœud text ().


Réponse populaire

htmlDocument.DocumentNode.SelectNodes("//ul/li").First().FirstChild.InnerText;

reviendra Bonjour tout le monde!




Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi