[Python-de] Listen in ein File Object verwandeln

Andreas Grytz agrytz at linux-user.de
Mit Aug 13 15:55:12 EDT 2003


On Wed, Aug 13, 2003 at 02:38:43PM +0200, Dinu Gherman wrote:
> Andreas Grytz:
> 
> > ich möchte eine Liste von Strings an eine Funktion übergeben, die aber
> > ein File-Objekt erwartet. Gibt es eine Möglichkeit, die Liste
> > umzuwandeln? Bisher behelfe ich mir dadurch, dass ich die Liste in eine
> > temporäre Datei schreibe und daraus anschließend wieder lese. Das
> > scheint mir nicht sehr elegant.
> 
> Schreibst Du noch, was diese ominoese Funktion mit dem vermeintlichen
> Dateiobjekt anstellt? Fuer mich macht das bisher noch nicht genug Sinn
> fuer eine qualifizierte Antwort! ;-)
> 
Na klar, auch wenn ich ich schon einige qualifizierte Antworten bekommen
habe. :)

Ich stricke gerade an einem Skript, das eine Mbox-Datei als Eingabe
nimmt und die Mails darin in ein XML-Format überführt. Als Anmerkung:
Ich arbeite mit Python 1.5.2 (fremd-administrierte Kiste).

Der Aufruf: formail -s < Mbox skript.py # weil ich zu faul war, eine
Schleife über die Mails zu programmieren (zu warm im Büro)

Den Body lese ich ein und wenn die Mail multipart/mixed ist, dann lese
ich alle Teile des Body als Listen ein und arbeite die nacheinader ab.
Wenn man so einen Bodypart mämlich wieder als mimetools.Message-Objekt
einliest, kriegt man prima wieder Content-Type und Encoding raus. Aber
dafür mußte ich eben die Liste in ein File-ähnliche Objekt umwandeln.

Alles klar? ;)

Wenn das mal über das frühe Betastadium hinaus ist, kann ich das Skript
ja mal bei Interesse posten.

Ciao und danke an alle,

	Andreas
-- 
Andreas Grytz		| http://www.linuxnewmedia.de
Stefan-George-Ring 24	| Tel:	+49 (0) 89 993411-0
D-81929 München		| Fax:	+49 (0) 89 993411-99