2009-05-08 11 views
6

¿Alguien sabe de un analizador HTML para VB.NET o C#? Sé que .NET tiene una gran cantidad de soporte XML, como XMLReader y XMLWriter. ¿Hay un HTMLWriter o HTMLReader?Analizador HTML

En última instancia, lo que me gustaría es una biblioteca que analizará un archivo HTML y generará eventos en función de las etiquetas que encuentre. Alguien sabe de una biblioteca para hacer esto?

+0

No puedo creer que duerma BCL tiene un analizador de HTML adecuada en un espacio de nombres/ensamble de neutro apropiado (sin tocar algunas de esas asambleas de IU) . JSON y XML obtuvieron muchísimas clases. – nawfal

Respuesta

5

El HTML Agility Pack es el camino a seguir si quiere analizar HTML (incluso hace un buen trabajo en la sopa de etiquetas). Teóricamente, el analizador XML incluido en el BCL debería ser capaz de analizar XHTML válido, pero HTML Agility Pack es una solución genérica que puede manejar HTML normal, XHTML y variantes desordenadas de ambos.

La generación de eventos cuando se encuentran etiquetas es algo que tendrá que implementar usted mismo, por supuesto, pero debería ser bastante trivial usando la clase HtmlReader.

+0

Lo he usado en el código de producción y he estado muy contento. – mkelley33

+0

También lo uso en producción - ¡funciona bien! – Dror

1

Escribí este HtmlParser hace mucho tiempo y acabo de lanzarlo como un proyecto de código abierto en GitHub. Es más rápido que las herramientas típicas de análisis de HTML porque no crea el DOM. Hace exactamente lo que usted solicitó y plantea "eventos" para cada etiqueta.

https://github.com/calbucci/CalbucciLib.HtmlParser

me acaba de agregar a NuGet:

https://www.nuget.org/packages/CalbucciLib.HtmlParser/

+0

¿Esto analiza las etiquetas HTML5 también? Tales como

y etc. – Icemanind

+0

Sí, lo hace. Admite incluso etiquetas desconocidas. –

Cuestiones relacionadas