ottenere il testo dal documento html usando HtmlAgilityPack tramite XPath

c# html-agility-pack xpath

Domanda

Ho seguito html in un file, sto caricando questo file in un HTMLDocument usando HtmlAgilityPack .

Il problema è che voglio solo ottenere Hello World! usando XPath e non il testo interno.

Come ottengo questo?

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

Risposta accettata

L'XPath:

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

Dovrebbe selezionare il testo attuale "Hello World!"

È quindi possibile selezionare il valore di questo nodo.

In uso:

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

In sostanza, ciò che dice è navigare in un nodo ul, selezionare il primo li e quindi selezionare il nodo text ().


Risposta popolare

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

tornerà Hello world!




Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché
Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché