He seguido html en un archivo, estoy cargando este archivo en un documento HTMLDocument
usando HtmlAgilityPack
.
El problema es que solo quiero conseguir Hello World!
Usando XPath
y no el texto interno.
¿Cómo logro esto?
<ul>
<li>
Hello world!
<ul>
<li>
Welcome to planet!
</li>
</ul>
</li>
</ul>
El XPath:
//ul/li[1]/text()
Debería seleccionar el texto real "¡Hola mundo!"
A continuación, puede seleccionar el valor de este nodo.
En uso:
string text = doc.DocumentElement.SelectSingleNode("//ul/li[1]/text()").Value;
En esencia, lo que esto dice es navegar a un nodo ul, seleccionar el primer li y luego seleccionar el nodo text ().
htmlDocument.DocumentNode.SelectNodes("//ul/li").First().FirstChild.InnerText;
volverá hola mundo!