Hola,
Ignoro si te pueda ser de utilidad, pero existe el
HTMLTidy, y si no me equivoco su codigo fuente está disponible. En realidad es una herramienta para desarrolladores que tiene como objetivo encontrar errores en el código y corregirlos. Tal vez incluya código fuente que te sea útil.
Otra sea buscar librerías que solo "parseen". Me suena la existencia de librerías para XML, pero debe haber por ahí para HTML, casi sin duda. Sería buena idea buscar en
SourceForge.
Personalmente me siento inclinado a pensar que es más sencillo crear un parser que simplemente "extraiga" el texto de la página. Sería simplemente "ignorar" el contenido de las etiquetas, y algunas cosillas por ahí. No sé. Ignoro de que vaya tu tarea.
¡Suerte!