Generazione Slug in Python: Guida Django, Flask e Python Vanilla

Impara tutti i metodi di generazione slug URL in Python. Crea URL SEO-friendly con Django slugify, libreria python-slugify e funzioni personalizzate.

Cos'è uno Slug in Python e perché è importante?

Uno slug è la parte leggibile e SEO-friendly di un URL. Creare slug in Python è critico per l'ottimizzazione dei motori di ricerca.

Metodo 1: Slug con Python Vanilla

import re
import unicodedata

def slugify(text):
    text = unicodedata.normalize('NFKD', text)
    text = text.encode('ascii', 'ignore').decode('ascii')
    text = text.lower()
    text = re.sub(r'[^a-z0-9]+', '-', text)
    return text.strip('-')

Metodo 2: Libreria python-slugify

pip install python-slugify

from slugify import slugify
slug = slugify("Ciao Mondo!")
print(slug)  # ciao-mondo

Metodo 3: slugify di Django

from django.utils.text import slugify
slug = slugify("Ciao Mondo")
print(slug)  # ciao-mondo

Caratteri italiani

def italian_slugify(text):
    it_map = {'à': 'a', 'è': 'e', 'é': 'e', 'ì': 'i', 'ò': 'o', 'ù': 'u'}
    for it_char, en_char in it_map.items():
        text = text.replace(it_char, en_char)
    text = text.lower()
    text = re.sub(r'[^a-z0-9]+', '-', text)
    return text.strip('-')

Conclusione

Python offre molteplici metodi per creare slug. Scegli quello adatto al tuo progetto.