Я ищу код C # для преобразования HTML-документа в обычный текст.
Я не ищу простое удаление тегов, но что-то, что будет выводить простой текст с разумным сохранением исходного макета.
Вывод должен выглядеть так:
Html2Txt при W3C
Я посмотрел пакет HTML Agility Pack, но не думаю, что это то, что мне нужно. У кого-нибудь есть другие предложения?
РЕДАКТИРОВАТЬ: Я просто скачал пакет Agility HTML из CodePlex и запустил проект Html2Txt. Какое разочарование (по крайней мере, модуль, который делает преобразование HTML в текст)! Все, что он делал, это вырезал теги, выравнивал таблицы и т. Д. Вывод не выглядел так, как Html2Txt @ W3C. Жаль, что этот источник не доступен.
Я искал, есть ли более «консервированное» решение.
РЕДАКТИРОВАТЬ 2: Спасибо всем за ваши предложения. FlySwat наклонил меня в ту сторону, куда я хотел идти. Я могу использовать класс System.Diagnostics.Process
для запуска lynx.exe с ключом "-dump", чтобы отправить текст в стандартный вывод и перехватить стандартный вывод с помощью ProcessStartInfo.UseShellExecute = false
и ProcessStartInfo.RedirectStandardOutput = true
. Я оберну все это в класс C #. Этот код будет вызываться только изредка, поэтому я не слишком озабочен порождением нового процесса по сравнению с выполнением его в коде. Плюс, Рысь БЫСТРАЯ !!