Gibt es ein XmlReader-Äquivalent für HTML in .Net?

.net html html-agility-pack parsing xmlreader

Frage

Ich habe HtmlAgilityPack in der Vergangenheit verwendet, um HTML in .Net zu analysieren, aber ich mag die Tatsache nicht, dass es nur ein DOM-Modell verwendet.

Bei großen Dokumenten und / oder solchen mit großen Verschachtelungsebenen ist es möglich, einen Stapelüberlauf oder Speichermangel zu erreichen. Im Allgemeinen verwendet ein DOM-basiertes Parsing-Modell wesentlich mehr Speicher als ein Streaming-basierter Ansatz, typischerweise weil der Prozess, der den HTML-Code konsumieren möchte, möglicherweise nur wenige Elemente benötigt, um gleichzeitig verfügbar zu sein.

Kennt jemand einen anständigen HTML-Parser für .Net, mit dem Sie HTML ähnlich wie die XmlReader Klasse XmlReader ? dh in einer nur vorwärts strömenden Weise

Beliebte Antwort

Normalerweise verwende ich dazu SgmlReader: https://github.com/MindTouch/SGMLReader

Wie andere gesagt haben, gibt es Probleme darin, dass HTML nicht den gleichen wohlgeformten Regeln von XML folgt, daher ist es inhärent schwierig zu analysieren, aber SgmlReader macht normalerweise einen ziemlich guten Job.



Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum
Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum