[Python-de] Encoding von Datei rausbekommen

Matthias Felsche s0526295 at htw-berlin.de
Mi Apr 11 21:27:28 CEST 2012


Hallöchen,

ich habe es noch nicht probiert, aber unabhängig von der automatisierten
Nutzung in einem Python-Programm hat mir auf der Kommandozeile das
``file``-Kommando bisher immer gute Dienste geleistet.
Und mit

	https://github.com/ahupp/python-magic

hast du einen schönen Wrapper drum herum an der Hand.

Bitte berichte doch, ob es dein Problem lösen konnte.

viele Grüße
Matthias

Am 10.04.2012 08:49, schrieb Michael Weber:
> Guten Morgen werte Mitstreiter,
> 
> ich hab da mal ne Frage. Ich denke, dass dieses Thema bereits vielfach
> und sehr ausdauernd beredet wurde und vielleicht wird dieses Thema
> bereits gehasst. Man weiß es nicht, daher jetzt meine Frage.
> 
> Ausgangslage: ich habe Textdateien, die unter Windows bzw. Linux
> erstellt werden. Nun habe ich durch testen herausbekommen, dass seitens
> Linux z.b. Dateien mit UTF-8 erstellt werden. Gleichzeitig ist es auch
> möglich, dass de_DE at euro verwendet wird (Gentoo sei dank). Und Windows
> macht dann iso-8859-1.
> 
> Gut, ich denke mal, die Erkenntnisse haben viele schon gehabt.
> 
> Nun folgendes. Ich möchte gerne beim Öffnen der Datei mit codecs.open
> das korrekte Encoding angeben. Zum Ermitteln des gesuchten Encoding habe
> ich mich einfach mit chardet auseinandergesetzt und das dann halt auch
> genommen. Nun habe ich z.B. vernommen, dass das scheinbar nicht so gern
> gesehen ist und man kann dabei ja auch mal das falsche ermitteln (so ist
> es mir passiert: bei iso-8859-1 wird iso-8859-2 detektiert).
> 
> Und jetzt endlich die Frage: Wie würdet ihr das machen? Ein Shellaufruf
> und dann mit "file -ib <DATEI>" vielleicht? Oder gibt es da was
> schöneres, eleganteres und auch sinnvolleres??
> 
> Gruß und herzlichsten Dank
> Michael



Mehr Informationen über die Mailingliste python-de