LINUX.ORG.RU
ФорумTalks

Хочется странного. Оптимизатор HTML

 , ,


1

2

Сунули мне тут пару документов сработанных в LibreOffice. Там внутри тегов... шо пипец! Буковку в слово вставили, все окружено тегами. Одни и те же теги формата параграфа повторяются тысячу раз. Ну и так далее в том же духе.

Может есть какой-то оптимизатор тегов? Кто чего пользовал, знает?

★★★★★
Ответ на: комментарий от resurtm

Это чего-то не то. Мне не надо вредоносный XSS удалять и проверять соответствие стандарту HTML

vada ★★★★★
() автор топика
Ответ на: комментарий от vada

Ипануться можно!

<P ALIGN=LEFT STYLE=«text-indent: -0.03cm; margin-bottom: 0cm»><BR>
</P>
<P ALIGN=LEFT STYLE=«text-indent: -0.03cm; margin-bottom: 0cm»><BR>
</P>
<P ALIGN=CENTER STYLE=«text-indent: -0.03cm; margin-bottom: 0cm; font-variant: normal; font-style: normal»>
<FONT FACE=«Arial, sans-serif»><FONT SIZE=3><B>Расстановка хомутов</B></FONT></FONT></P>
<P ALIGN=LEFT STYLE=«text-indent: -0.03cm; margin-bottom: 0cm»><BR>
</P>

vada ★★★★★
() автор топика
Ответ на: комментарий от vada

Кто же вам виноват, что вы используете прямое форматирование и высоту строк абзацами подгоняете? Компьютер делает то что вы приказываете, а не то что вы хотите....

Suntechnic ★★★★★
()
Ответ на: комментарий от Suntechnic

Это не я. Люди делаю так как они привыкли. Получилось как хотели, ну и ладно. А что там внутри файла, кого волнует (кроме меня) :)

vada ★★★★★
() автор топика
Ответ на: комментарий от vada

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

strangeman ★★★★
()
Ответ на: комментарий от vada

Ясно. Ну извините - ООо/LO они такие - как напечатано - так и конвертят. Можно ли это «оптимизировать» путем выбрасывания «лишних» абзацев - даже не знаю... Как оптимизатор догадается что эти абзацы не нужны? А может они нужны? Может есть какие-то приблуды которые рендерят страницу и как-то определяют видимые/невидимые элементы? Тогда возможно.

Suntechnic ★★★★★
()
Ответ на: комментарий от vada

Это не я. Люди делаю так как они привыкли. Получилось как хотели, ну и ладно. А что там внутри файла, кого волнует (кроме меня) :)

У меня работа связана с обработкой подобного в том числе. Лучшее что я придумал:
Ctrl+A/Ctrl+C в kate и развернув на другом мониторе фильтром убрать пустые строки, регекспом накатать <p></p> на оставшиеся и, где надо, поменять <p> на <h*>. На все про все, в статье на 1-5 страниц выходит минут 5.

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


зато на выходе чистейший HTML.

BaBL ★★★★★
()

Когда я с таким столкнулся, проще оказалось взять контент и сверстать нормально.

Копипастишь плейнтекст, а потом просто расставляешь теги.

Kalashnikov ★★★
()
Ответ на: комментарий от strangeman

За ссылку спасибо, но эта Tidy полная КУ.
Увеличила размер файла в три раза. :) Все русские буквы заменила &bla-bla; Кодировка вся в попу...

vada ★★★★★
() автор топика
Ответ на: комментарий от BaBL

Да это понятно! Я тоже так делаю обычно, но хотелось как-то автоматизировать свой труд.
Тупо ведь руками все править. Выглядит как обезьяна орех колет.

vada ★★★★★
() автор топика
Ответ на: комментарий от Suntechnic

Да хотя бы стилями все заменить! Одинаковых тегов длинной в 200 символов пруд пруди.

vada ★★★★★
() автор топика
Ответ на: комментарий от Suntechnic

webkit умеет рендерить страницу в rendertree, его можно парсить скриптом и превращать обратно в html

XVilka ★★★★★
()
Ответ на: комментарий от vada

Да это понятно! Я тоже так делаю обычно, но хотелось как-то автоматизировать свой труд.
Тупо ведь руками все править. Выглядит как обезьяна орех колет.

Ну если редактор один и тот же используют, почему тогда не написать просто серию регекспов, которые одинаковые теги, даже пусть заранее заданные, превратят в короткие без style? и прописать стили для дефолтных элементов p, br, div и т.д.

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

BaBL ★★★★★
()
Ответ на: Я никогда не устану оставлять эту ссылку от Kalashnikov

Я никогда не устану оставлять эту ссылку
http://stackoverflow.com/a/1732454/

ты ведь понимаешь, что нет полностью белых и полностью черных стен?

1. XHTML нет нужны парсить регекспом по той простой причине, что он любым XML парсером корректно разберется. Это сама суть XHTML, он всегда валидный XML.

2. У ТС HTML код не пишут руками, он генерируется по заранее определенным стабильным алгоритмам опенофиса. Либра не умеет думать, она просто выполняет команды и человеческим фактором накосячить не может.

поэтому парсинг ТСовского HTML регекспом - задача вполне валидная и ознозначная, не предрекающая неоднозначных ситуаций.

BaBL ★★★★★
()
Ответ на: комментарий от BaBL

Логично, но это всё равно слишком сложная задача для регэкспов. Могу скопипастить другое:

Some people, when confronted with a problem, think «I know, I’ll use regular expressions.» Now they have two problems.

Замучаешься писать регэкспы для такого, а в результате всё равно получится машинописный говнокод, просто размером поменьше. В том куске что ТС привёл например регэкспами (не нечитаемыми заклинаниями, а регэкспами) можно максимум лишние абзацы убрать, убив при этом и отступы, тогда как руками это лекго можно красиво переверстать.

По-моему правильное решение - именно сверстать всё нормально заново. И это ещё спорный вопрос, что займёт меньше времени.

Kalashnikov ★★★
()
Ответ на: комментарий от wxw

char-encoding raw не?

Ага, только полностью игнорируется

vada ★★★★★
() автор топика
Ответ на: комментарий от Kalashnikov

Делаю руками. :( Налепил стилей, теперь чищу...
Матов не хватает!!!!

vada ★★★★★
() автор топика
Ответ на: комментарий от vada

но эта Tidy полная КУ.

<google mode=«on»>Возможно вы имели в виду: КЮ</google>

AlexCones ★★★
()

Почему никто не предложил пропатчить LibreOffice на предмет стилей и прочих проблем?

Sadler ★★★
()
Ответ на: комментарий от vada

За ссылку спасибо, но эта Tidy полная КУ.

Не КУ а КЮ. Гаварите правильна

Karapuz ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.