objectif
Parser des adresses email depuis des headers To/Cc/From.
code minimal
from email.utils import parseaddr, getaddresses
name, addr = parseaddr("Ada <ada@data.pm>")
print(addr.endswith("@data.pm")) # attendu: True
utilisation
from email.utils import getaddresses
lst = getaddresses(["To: Ada <a@data.pm>, Bob <b@data.pm>"])
print({a for _, a in lst} == {"a@data.pm","b@data.pm"})
variante(s) utile(s)
from email.utils import formataddr
print("<" in formataddr(("Name", "user@data.pm")))
notes
- getaddresses prend une liste de headers (chaînes) et retourne (nom, adresse).
- formataddr aide à re-construire des en-têtes corrects.