Abra un archivo en la codificación adecuada automáticamente [duplicado]

Esta pregunta ya tiene una respuesta aquí:

¿Cómo determinar la codificación del texto? 8 respuestas

Estoy lidiando con algunos problemas en algunos archivos sobre la codificación. Recibimos archivos de otra compañía y tenemos que leerlos (los archivos están en formato csv)

Extrañamente, los archivos parecen estar codificados en UTF-16. Estoy logrando hacer eso, pero tengo que abrirlos usando lacodecs módulo y especificando la codificación, de esta manera.

ENCODING = 'utf-16'
with codecs.open(test_file, encoding=ENCODING) as csv_file:
    # Autodetect dialect
    dialect = csv.Sniffer().sniff(descriptor.read(1024))
    descriptor.seek(0)
    input_file = csv.reader(descriptor, dialect=dialect)

    for line in input_file:
       do_funny_things()

Pero, al igual que puedo obtener el dialecto de una manera más agnóstica, creo que será genial tener una forma de abrir automáticamente los archivos con su codificación adecuada, al menos todos los archivos de texto. Hay otros programas, como vim, que logran eso.

¿Alguien sabe una forma de hacerlo en Python 2.6?

PD: Espero que esto se resuelva en Python 3, ya que todas las cadenas son Unicode ...

Respuestas a la pregunta(4)

Su respuesta a la pregunta