4

Я ищу способ конвертировать папку, полную HTML-файлов, в обычный текст. Я хочу, чтобы текстовые файлы были максимально похожи на то, что я получил бы, если бы выделил весь текст в веб-браузере, скопировал его и вставил текст в простой текстовый файл.

НЕТ, ДЕЙСТВИТЕЛЬНО, Я ХОЧУ НЕФОРМАТИВНЫЙ ПРОСТАЙТЕ ТЕКСТ. Все решения, которые я нахожу, производят Markdown или что-то похожее на него, или пытается сохранить макет, или использует звездочки и подчеркивания для обозначения форматирования текста, или сохраняет содержимое скриптов в выходном файле, или какую-то умную чертову штуку ,

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

Я бы хотел терминальное приложение или скрипт Python, но я возьму все, что смогу получить.

3 ответа3

3

html2text - это скрипт Python, который преобразует страницу HTML в эквивалентный структурированный текст Markdown. html2text можно загрузить и запустить в любой операционной системе, в которой установлен Python. Программа html2text находится в репозиториях многих дистрибутивов Linux, и ее можно запустить из командной строки следующим образом:

html2text -style pretty input.html  

Эта команда не только преобразует исходный html-файл в текст, но и делает довольно хорошую работу, облегчая чтение текста. Заголовки выглядят как заголовки, списки выглядят как списки и т.д.

2

Используйте w3m -dump <page.html> .

Это даст вам текстовое представление HTML-файла.

Со страницы руководства:

-dump  dump formatted page into stdout

Хотя он говорит formatted , вывод - просто текст.

0

Unix.com: Как удалить только HTML-теги в файле, предоставляет:
sed -n '/^$/!{s/<[^>]*>//g;p;}' filename
или html2text

CommandLineFu: удаление всех тегов HTML показывает другую строку sed , или awk .

Я полагаю, что это несколько распространенная операция, предоставляемая несколькими программами, и что наиболее распространенное имя для этой задачи - "раздеть" HTML. Быстрый поиск Google для: html-тегов Linux strip показывает несколько решений, включая PHP: strip-теги .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .