¿Alguien sabe cómo obtener la codificación de un archivo en Python. Sé que puede usar el módulo de códecs para abrir un archivo con una codificación específica, pero debe saberlo con antelación.¿Cómo saber la codificación de un archivo en Python?
import codecs
f = codecs.open("file.txt", "r", "utf-8")
¿Hay alguna forma de detectar automáticamente qué codificación se utiliza para un archivo?
Gracias de antemano
Editar: Gracias a todos por answsers muy interesantes. Usted también puede estar interesado por http://whatismyencoding.com/ que se basa en Chardet (más sobre el sitio es alimentado con biberón marco pitón)
Gran idea. Gracias. –
Simplifiqué y adapté esto un poco, utilizando simplemente un .decode() en una prueba, excepto que se desencadena después de (1) una conversión exitosa, o (2) después de agotar la encoding_guess_list. Si el final fue un error, entonces aplico un .decode() diferente con los errores establecidos para 'reemplazar' en lugar de 'estricto'. – JDM