Tengo un programa de Python que va a tomar los archivos de texto como entrada. Sin embargo, algunos de estos archivos pueden comprimirse gzip.¿Cómo saber si un archivo está comprimido gzip?
¿Existe una multiplataforma, utilizable a partir de Python manera de determinar si un archivo está comprimido con gzip o no?
¿La siguiente fiable o podría un archivo de texto normal 'accidentalmente' mirada gzip-como suficiente para mí para obtener falsos positivos?
try:
gzip.GzipFile(filename, 'r')
# compressed
# ...
except:
# not compressed
# ...
Solo una pequeña sugerencia ... nunca confíe en el final del archivo. Vea la respuesta de hop para saber cómo hacerlo. – helpermethod
@Helper: no estoy seguro (ver mi edición). usted todavía tendría que lidiar con un posible IOError, pero los archivos comprimidos sin el sufijo están rotos, en mi opinión ... llamada difícil :) – hop