Здравствуйте, kronos_vano, Вы писали:
_>2) Преобразователь из html текста в некую структуру удобную для обхода.
Самое ближайшее, это htmlcxx (sf.net) некоторое время присматривался
_>3) На входе текст html на выходе некая структура, к которой можно применить xpath, плюс сама библиотека для работы с xpath.
_>Было бы здорово если бы библиотеки умели работать с текстом вида "<td><a>asdf</a></td>", то есть не с валидной html страницей, а с куском html (конечно сам по себе ошибок не содержащим).
"xml grep xpath" В гугле. Первый результат даёт вот это:
http://xmlstar.sourceforge.net/
и, как сказали рядом, tidy выдаёт XML на-гора.