Skip to main content

HTML Parser (HtmlAgilityPack)

Beschreibung

Das Parsen von HTML-Seiten ist eine eher unbeliebte Aufgabe. Mit dem HtmlAgilityPack ist es unter CSharp auf einfache Weise möglich HTML-Seiten effizient zu laden, die Tag-Gruppen zu selektieren und zu verarbeiten.

Nuget

HtmlAgilityPack.NetCore

Content für Beispiele

string content = @"
<html>
 <head>
 <title>Test</title>
 </head>
 <body>
 <ul id="PictureList">
 <li><img src="testurl1" /></li>
 <li><img src="testurl2" /></li>
 </ul>
 </body>
</html>";

var html = new HtmlDocument();
html.LoadHtml(content);

Laden eines HTML-Dokumentes

Das Paket bringt zum Laden eines HTML-Doumentes die Klasse HtmlDocument mit.

var html = new HtmlDocument();
html.LoadHtml(content);

Suchen nach img-Tags

Das Selektieren von Tags ist über die Property DocumentNode der HtmlDocument-Klasse möglich.

var root = html.DocumentNode;

var nodes = root.Select("//img", string.Empty);

Element nach Id

var node = html.GetElementbyId("PictureList");