Html в ansi цветной терминальный текст

Я работаю под Linux и хочу получить html-страницу из Интернета, а затем вывести ее на терминал. Я обнаружил, что html2text по сути выполняет свою работу, но он преобразует мой html в обычный текст, тогда как мне лучше преобразовать его в цветной текст в духе ls --color=auto. Любые идеи?


person Sergey    schedule 24.03.2011    source источник


Ответы (3)


Браузер elinks может это сделать. Другие текстовые браузеры, такие как lynx или w3m, также могут это делать.

elinks -dump -dump-color-mode 1 http://example.com/

приведенный выше пример предоставляет текстовую версию http://example.com/ с использованием 16 цветов. Выходной формат может быть настроен дополнительно в зависимости от необходимости.

Параметр -dump включает режим дампа, который просто печатает всю страницу в виде текста, а места назначения ссылок распечатываются в своего рода «стиле электронной почты».

-dump-color-mode 1 включает раскрашивание вывода с использованием 16 основных цветов терминала. В зависимости от значения и возможностей эмулятора терминала это может быть до ~16 миллионов (True Color). Значения задокументированы в elinks.conf (5).

Цвета, используемые для вывода, также можно настроить, что описано в elinks.conf(5).

person davrieb    schedule 28.03.2011
comment
Обратите внимание, что elinks не сбрасывает автоматически цвета терминала, в результате чего любой последующий вывод (из скрипта или терминала) будет иметь тот же цвет, что и конец вывода elinks, пока не встретится новый код цвета. Вы можете выполнить сброс вручную, выполнив tput sgr0 после elinks. - person Marijn; 08.01.2018

браузер w3m поддерживает окрашивание выходного текста.

person sarnold    schedule 24.03.2011
comment
ну, lynx тоже, но мне нужно только вывести страницу, а не просматривать ее. - person Sergey; 24.03.2011
comment
Вам не нужно. w3m тоже имеет вариант, похожий на -dump, и elinks тоже. Остается только выбрать тот, который вам наиболее удобен. - person davrieb; 24.03.2011
comment
@davrieb, есть идеи, как заставить один из браузеров отображать цвет? - person sarnold; 25.03.2011
comment
@sarmold: Не из головы, но да. Я предоставлю подробности в отдельном ответе для лучшего обнаружения. - person davrieb; 28.03.2011
comment
@davrieb, w3m [0.5.3, 2018] -dump подавляет цветной вывод - person fche; 04.07.2019

Вы можете использовать браузер lynx для вывода текста с помощью этой команды.

lynx -dump http://example.com
person Andrew Marsh    schedule 24.03.2011
comment
Любая идея, как заставить lynx -dump также включать цвет? По крайней мере, в моем дистрибутиве lynx компилируется с ncurses и полностью использует ncurses, чтобы определить, когда использовать цвет; Я не мог заставить его сбрасывать цветной вывод. - person sarnold; 25.03.2011
comment
Пробовал lynx -dump somefile.html < <( echo -n qj) > out; cat out и его варианты - безрезультатно. Просто чтобы вы знали, что это тоже не работает. Так что, если вы не взломаете ncurses… Но тогда установка elinks, вероятно, снова станет менее хлопотной. ;) - person Evi1M4chine; 12.12.2013