HTMLMinify, un minifier de fichier HTML

HTMLMinify est un utilitaire en ligne de commande, écrit en Python, qui réduit le poids des fichiers HTML en supprimant les caractères inutiles (espaces, retours chariots).

Il prend toutefois garde de conserver certains caractères lorsqu'ils se trouvent à l'intérieur de balises spéciales (pre, style, script etc.).

Pré-requis

Pour utiliser HTMLMinify, il faut tenir compte de plusieurs aspects :

Utilisation

Il y a deux façons d'utiliser HTMLMinify. HTMLMinify peut prendre soit un nom de fichier en paramètre sur la ligne de commande, soit en récupérant le code HTML à minifier sur l'entrée standard.

htmlminify source.html
cat source.html | htmlminify

Dans les deux cas, le résultat est envoyé sur la sortie standard en UTF-8.

L’option -f ou --frenchtypo permet d’appliquer quelques règles typographiques françaises au contenu texte (le contenu des balises style, code ou script n’est pas concerné).

En invoquant htmlminify --help, l’aide suivante est affichée :

usage: htmlminify [options] [file]

HTMLMinify minifies HTML files encoded in UTF-8. Output is also encoded in UTF-8.

options:
  -h, --help         shows this help
  -f, --frenchtypo   apply some french typographic rules

If file is not specified, htmlminify will read it from the standard input.

Report bugs to: zigazou@free.fr
HTMLMinify home page: <http://ouep.eu/python/htmlminify-un-minifier-de-fichier-html/>

Notes d’utilisation

HTMLMinify n’utilise pas directement d’expressions rationnelles pour repérer les espaces inutilisés et les supprimer. Cette commande utilise la bibliothèque htmlparser de Python pour lire et analyser le code HTML. Celui-ci est alors réécrit ce qui permet de ne pas prendre en compte les espaces inutiles contenus dans les balises.

Une expression rationnelle est uniquement utilisée pour réduire les séquences de caractères blancs (espaces, retour à la ligne, tabulations…) des blocs le supportant sans dommage (ce qui exclut les balises pre, style et script).

HTMLMinify peut également être utilisé comme bibliothèque Python. Il suffira alors d’utiliser la classe HTMLMinify pour effectuer le travail directement depuis vos applications en Python.

Téléchargement

Télécharger htmlminify