Что может пойти не так с моим сайтом с моим очень простым регулярным выражением минимизации HTML? - PullRequest
1 голос
/ 03 февраля 2012

Текущие отображаемые HTML-страницы имеют много пробелов. Сокращение HTML перед отправкой экономит мне около 25% размера файла. Я минимизирую текст, используя эти регулярные выражения (в Python):

def minify_html(text):
    text = re.sub(r'>\s+<', '><', text).strip()
    return re.sub(r'\s+', ' ', text)

Я не поддерживаю теги <pre> и <code> на моем сайте, но что произойдет, если я сделаю это через Markdown? Мой CSS отформатирован соответственно (для встроенных списков, например). У меня есть только очень простой встроенный JavaScript, такой как Google Analytics или вызывающие функции во внешнем файле. Это регулярное выражение не замедляет рендеринг страниц в отличие от других библиотек минимизации HTML.

С какими проблемами я могу столкнуться?

Ответы [ 3 ]

2 голосов
/ 03 февраля 2012

Кроме того,

This is <em>an</em> <strong>example</strong>

сильно отличается от

This is <em>an</em><strong>example</strong>

Но ваше регулярное выражение преобразует первое в второе.

1 голос
/ 03 февраля 2012

Я использую этот компрессор HTML / HTML5, который я написал на производстве. Не стесняйтесь адаптировать его под свои нужды.

Также: если вы не передадите conservative=True, это будет довольно радикально при сжатии.

0 голосов
/ 03 февраля 2012

Зависит от вашей страницы, но что может пойти не так:

  • Форматирование содержимого тега PRE
  • Строки JavaScript (хотя это не является вашей проблемой, однако)*
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...