HTML parser for text search

Сейчас текстовый парсер полнотекстового поиска автоматически
предполагает, что ему на вход могут подать HTML, и пытается вырезать
теги, скрипты и прочее, чтобы это не индексировать. Это было сделано
очень давно, зашито намертво и, возможно, не совсем корректно с точки
зрения спецификации.

Хотелось бы:

1) разделить процесс извлечения текста из HTML и процесс выделения из
него  лексем, это позволит, как минимум, не беспокоиться побочных
эффектов при индексации plain text. Иметь отдельный парсер для HTML и
отдельный - для plain text.

2) научиться выделять из HTML определенные части для индексации
(какие-то вообще исключать из индексации, а какие-то индексировать с
разными весами).

Парсер должен, конечно, быть честным, т.е. спецификации соответствовать.