[Python-de] Usenet-Kodierung

Detlef Lannert lannert at uni-duesseldorf.de
Don Jun 5 15:42:11 EDT 2003


> > Das kann dann z.B. so aussehen:
> > "From: =?ISO-8859-1?Q?Michael_Str=F6der?= <michael at stroeder.com>"
> >
> > Gibt es ein Python-Modul, mit dem ich das wieder dekodieren kann? Wenn
> > nicht, wo finde ich Informationen über das Format? Ich könnte jetzt was
> > spezielles für ISO-8859 schreiben, aber allgemein wäre natürlich besser
 [...]
> Dein Beispiel-Header oben ist in quoted-printable. Um den zu
> entziffern musst du allerdings auch noch die =?...? Kodierungs-
> Hinweise rausfiltern, und am besten wahrscheinlich das Resultat
> nach Unicode umwandeln (und den Zeichensatz fuer eine
> Rueckwandlung zwischenspeichern?). Ob das email-Modul das schon
> macht, weiss ich nicht, aber vermutlich wuerde so eine Funktion
> da am besten hinpassen.

Sie paßt sehr gut da hinein ... ;-) :

 $ python2.3
>>> from email import Header
>>> Header.decode_header("From: =?ISO-8859-1?Q?Michael_Str=F6der?= "
... "<michael at stroeder.com>")
[('From:', None), ('Michael Str\xf6der', 'iso-8859-1'),
('<michael at stroeder.com>', None)]
>>> 

Damit müßte das Problem des OP zu lösen sein?

  Detlef