Use HtmlAgilityPack para analizar la variable HTML, no el documento HTML?

c# html-agility-pack

Pregunta

Tengo una variable en mi programa que contiene datos HTML como una cadena. La variable, htmlText , contiene algo como lo siguiente:

<ul><li><u>Mode selector </u></li><li><u>LAND ALT</u></li>

Me gustaría iterar a través de este HTML, utilizando el HtmlAgilityPack, pero cada ejemplo que veo intenta cargar el HTML como un documento. Ya tengo el HTML que quiero analizar dentro de la variable htmlText . ¿Puede alguien mostrarme cómo analizar esto, sin cargarlo como un documento?

El ejemplo que estoy viendo ahora se ve así:

static void Main(string[] args)
{
    var web = new HtmlWeb();
    var doc = web.Load("http://www.stackoverflow.com");

    var nodes = doc.DocumentNode.SelectNodes("//a[@href]");

    foreach (var node in nodes)
    {
            Console.WriteLine(node.InnerHtml);
    }
}

Quiero convertir esto para usar mi texto htmlText y encontrar todos los elementos underline dentro. Simplemente no quiero cargar esto como un documento ya que ya tengo el HTML que quiero analizar almacenado en una variable.

Respuesta aceptada

Se puede utilizar el LoadHtml método de HtmlDocument clase


Respuesta popular

Documento es simplemente un nombre, no es realmente un documento (o no tiene que serlo).

var doc = New HtmlAgilityPack.HtmlDocument;
string myHTML = "<ul><li><u>Mode selector </u></li><li><u>LAND ALT</u></li>";
doc.LoadHtml(myHTML);
foreach (var node in doc.DocumentNode.SelectNodes("//a[@href]")) {
    Console.WriteLine(node.InnerHtml);

}

He usado exactamente lo mismo para analizar fragmentos de html en variables.



Related

Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué