У меня встроенный HTML Tidy в моем приложении для очистки входящего HTML. Но у Tidy огромное количество ошибок, и исправление их непосредственно в источнике - мой худший кошмар. Типичный исходный код - нечитаемая мерзость. Thousand + линейные функции, плохое именование имен, код спагетти и т.д. Это действительно ужасно.
Хуже того, официальная разработка похоже, прекратилась. За последние 12 месяцев в официальный репозиторий CVS было три транзакции с записью. Но он был мертв и похоронен гораздо дольше, чем это...
Итак, я ищу приложение или библиотеку OSS C или С++, которая может делать то, что может сделать Tidy (когда это похоже на это): исправить плохую разметку HTML и преобразовать ее в действительный XHTML (это та часть, которая мне интересна в). И я имею в виду всевозможные плохие разметки.
Есть ли что-то подобное?
EDIT: Мне нужно это для манипуляций на дереве DOM с помощью инструмента обработки XML и для общего соответствия спецификации XHTML. Мое приложение должно принимать HTML-код от пользователей (что часто бывает недействительным всеми способами) и выводить действительный XHTML. Он должен иметь возможность обрабатывать даже HTML, который обычно не отображается в браузере, потому что пользователь редактировал его вручную и не проверял впоследствии.
Замена замены для парсинга, исправляющего ошибки Tidy... который не сосать. Я не возражаю против ошибок, если источник доступен для чтения, и я могу самостоятельно исправлять проблемы, или если есть активные разработчики, которые своевременно предоставляют исправления.