Пробел полосы в сгенерированном HTML с помощью чистого кода Python

Я использую Jinja2 для генерации файлов HTML, которые обычно очень огромны в размере. Я заметил, что сгенерированный HTML имел много пробела. Существует ли инструмент чистого Python, который я могу использовать для уменьшения этого HTML? То, когда, как я говорю, "минимизируют", я имею в виду, удаляют ненужный пробел из HTML (во многом как Google делает - смотрят на источник для google.com, например),

Я не хочу полагаться на libraries/external-executables такой как опрятный для этого.

Для дальнейшего разъяснения нет фактически никакого кода JavaScript. Только содержимое HTML.

9
задан Reinstate Monica 26 January 2010 в 19:53
поделиться

2 ответа

Если вы просто хотите избавиться от избыточного пробела, вы можете использовать:

>>> import re
>>> html_string = re.sub(r'\s\s+', ' ', html_string)

или:

>>> html_string = ' '.join(html_string.split())

, если вы хотите сделать что-то более сложное, чем просто зачистку лишнего пробела, вы Нужно использовать более мощные инструменты (или более сложное регулярное выражение).

1
ответ дан 4 December 2019 в 14:28
поделиться

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

цитирование Документы :

Но вы также можете полотить пробел в шаблонах вручную. Если вы поместите минус знак (-) на начало или конец блока (например, для тега), комментариев или переменное выражение, которое вы можете удалить пробелы после или до этого блока:

{% for item in seq -%}
    {{ item }}
{%- endfor %}

Это даст все элементы без пробел между ними. Если SEQ был список номеров от 1 до 9, вывод будет 123456789.

9
ответ дан 4 December 2019 в 14:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: