Experimente o módulo Python chardet , que está disponível no PyPi:
pip install chardet
Em seguida, execute chardetect myfile.txt
.
O Chardet é baseado no código de detecção usado pela Mozilla, por isso deve dar resultados razoáveis , desde que o texto de entrada seja longo o suficiente para análise estatística. Leia a documentação do projeto .
Como mencionado nos comentários, é bastante lento, mas algumas distribuições também enviam a versão original em C ++, já que o @Xavier encontrou no link . Há também uma versão do Java em algum lugar.