Skip to content

Instantly share code, notes, and snippets.

Created October 17, 2013 20:43
Show Gist options
  • Save anonymous/7031867 to your computer and use it in GitHub Desktop.
Save anonymous/7031867 to your computer and use it in GitHub Desktop.
Detectar a codificação de um arquivo de texto.
import io, chardet
from chardet.universaldetector import UniversalDetector
f = open('file.txt')
# Jeito mais simples e menos preciso.
encoding = chardet.detect(f.read())['encoding']
# Maneira mais precisa de se detectar o encoding.
# Servirá de fallback, caso a primeira tentativa não dê resultados.
if encoding is None:
# Voltando pro início do arquivo
f.seek(0)
u = UniversalDetector()
for linha in f:
u.feed(linha)
u.close()
encoding = u.result['encoding']
f.close()
f = io.open('file.txt', encoding=encoding)
# A partir daqui, manipulamos o arquivo da maneira que quisermos.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment