No está claro a partir de su pregunta si desea el tamaño del archivo comprimido o sin comprimir, pero en el primer caso, es fácil con el os.path.getsize
función desde el módulo os
>>> import os
>>> os.path.getsize('flickrapi-1.2.tar.gz')
35382L
Para obtener la respuesta en megabytes, puede desplazar la respuesta 20 a la derecha, por ejemplo,
os.path.getsize('large.tar.gz') >> 20
Aunque esa operación se realizará en números enteros, si desea conservar fracciones de un megabyte, divida por (1024*1024.0)
en cambio. (Tenga en cuenta el .0
para que el divisor sea un flotador.)
Actualización: En los comentarios a continuación, Johnsyweb señala una receta útil para producir de manera más general representaciones legibles por humanos de tamaños de archivos.
Usa el os.stat()
función para obtener una estructura estadística. El st_size
atributo de eso es el tamaño del archivo en bytes.