Ich habe eine Variable in meinem Programm, die HTML-Daten als Zeichenfolge enthält. Die Variable htmlText
enthält etwa Folgendes:
<ul><li><u>Mode selector </u></li><li><u>LAND ALT</u></li>
Ich möchte dieses HTML mit dem HtmlAgilityPack durchlaufen, aber jedes Beispiel, das ich sehe, versucht, den HTML-Code als Dokument zu laden. Ich habe bereits den HTML, den ich in der Variable htmlText
analysieren htmlText
. Kann mir jemand zeigen, wie man das analysiert, ohne es als Dokument zu laden?
Das Beispiel, das ich gerade anschaue, sieht so aus:
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);
}
}
Ich möchte dies umwandeln, um meinen htmlText
und alle darin enthaltenen underline
finden. Ich möchte das nicht als Dokument laden, da ich bereits den HTML-Code, der in einer Variablen gespeichert werden soll, gespeichert habe.
Sie können die LoadHtml
Methode der HtmlDocument
Klasse verwenden
Dokument ist einfach ein Name, es ist nicht wirklich ein Dokument (oder muss es nicht sein).
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);
}
Ich habe genau dasselbe verwendet, um HTML-Chunks in Variablen zu analysieren.