Wie verwende ich das HTML Agility Pack ?
Mein XHTML-Dokument ist nicht vollständig gültig. Deshalb wollte ich es benutzen. Wie verwende ich es in meinem Projekt? Mein Projekt ist in C #.
c#
html
html-agility-pack
Carla
quelle
quelle
var body = CQ.CreateFromFile(filePath)["body"]
.Antworten:
Installieren Sie zunächst das HTMLAgilityPack- Nuget-Paket in Ihrem Projekt.
Dann als Beispiel:
(Hinweis: Dieser Code ist nur ein Beispiel und nicht unbedingt der beste / einzige Ansatz. Verwenden Sie ihn nicht blind in Ihrer eigenen Anwendung.)
Die
HtmlDocument.Load()
Methode akzeptiert auch einen Stream, der bei der Integration in andere streamorientierte Klassen in .NET Framework sehr nützlich ist. WhileHtmlEntity.DeEntitize()
ist eine weitere nützliche Methode zur korrekten Verarbeitung von HTML-Entitäten. (Danke Matthew)HtmlDocument
undHtmlNode
sind die Klassen, die Sie am meisten verwenden werden. Ähnlich wie bei einem XML-Parser werden die Methoden selectSingleNode und selectNodes bereitgestellt, die XPath-Ausdrücke akzeptieren.Achten Sie auf die
HtmlDocument.Option??????
booleschen Eigenschaften. Diese Kontrolle , wie dieLoad
undLoadXML
Methoden verarbeiten Ihre HTML / XHTML.Es gibt auch eine kompilierte Hilfedatei namens HtmlAgilityPack.chm, die eine vollständige Referenz für jedes der Objekte enthält. Dies befindet sich normalerweise im Basisordner der Lösung.
quelle
SelectSingleNode()
scheint vor einiger Zeit entfernt worden zu seinIch weiß nicht, ob dies für Sie hilfreich sein wird, aber ich habe einige Artikel geschrieben, in denen die Grundlagen vorgestellt werden.
Der nächste Artikel ist zu 95% vollständig. Ich muss nur Erklärungen zu den letzten Teilen des Codes schreiben, den ich geschrieben habe. Wenn Sie interessiert sind, werde ich versuchen, mich daran zu erinnern, hier zu posten, wenn ich es veröffentliche.
quelle
HtmlAgilityPack verwendet die XPath-Syntax, und obwohl viele argumentieren, dass sie schlecht dokumentiert ist, hatte ich keine Probleme, sie mithilfe dieser XPath-Dokumentation zu verwenden: https://www.w3schools.com/xml/xpath_syntax.asp
Zu analysieren
Ich war das:
quelle
XPath
Standard abhängig . Man sollte zuerst diesen Standard lernen und danach wird alles einfach.Der Hauptcode für HTMLAgilityPack lautet wie folgt
quelle
quelle
Erste Schritte - HTML Agility Pack
quelle
Versuche dies
quelle