¿Cuál es la mejor manera de analizar HTML en C#? [cerrado]
Estoy buscando una biblioteca/método para analizar un archivo html con más características específicas de html que las bibliotecas de análisis xml genéricas.
Paquete de agilidad HTML
Este es un analizador HTML ágil que crea un DOM de lectura/escritura y admite XPATH o XSLT simple (en realidad, no TIENES que entender XPATH ni XSLT para usarlo, no te preocupes...). Es una biblioteca de códigos .NET que le permite analizar archivos HTML "fuera de la web". El analizador es muy tolerante con HTML con formato incorrecto del "mundo real". El modelo de objetos es muy similar al que propone System.Xml, pero para documentos (o streams) HTML.
Puede usar TidyNet.Tidy para convertir HTML a XHTML y luego usar un analizador XML.
Otra alternativa sería utilizar el motor integrado mshtml:
using mshtml;
...
object[] oPageText = { html };
HTMLDocument doc = new HTMLDocumentClass();
IHTMLDocument2 doc2 = (IHTMLDocument2)doc;
doc2.write(oPageText);
Esto le permite utilizar funciones similares a JavaScript como getElementById()