Saltar al contenido principal

Cómo obtener el tamaño de un archivo en Python.

Aquí tienes un tutorial paso a paso sobre cómo obtener el tamaño de un archivo en Python:

  1. Primero, debes decidir si deseas obtener el tamaño de un archivo local o un archivo en un servidor remoto. El proceso será ligeramente diferente en cada caso.

  2. Para obtener el tamaño de un archivo local, puedes usar el módulo os en Python. Comienza importándolo al comienzo de tu script:

   import os
  1. A continuación, debes especificar la ruta al archivo del cual deseas obtener el tamaño. Puedes proporcionar la ruta absoluta (por ejemplo, "C:/ruta/al/archivo.txt") o una ruta relativa (por ejemplo, "./archivo.txt" si el archivo está en el mismo directorio que tu script).

  2. Una vez que tengas la ruta del archivo, puedes usar la función os.path.getsize() para obtener el tamaño del archivo en bytes. Pasa la ruta del archivo como argumento a esta función:

   ruta_archivo = "ruta/a/tu/archivo.txt"
tamaño_archivo = os.path.getsize(ruta_archivo)

Después de ejecutar este código, la variable tamaño_archivo contendrá el tamaño del archivo en bytes.

  1. Si deseas mostrar el tamaño del archivo en un formato más legible para los humanos (por ejemplo, kilobytes, megabytes, etc.), puedes definir una función auxiliar para convertir el tamaño. Aquí tienes un ejemplo:
   def convertir_tamaño(bytes_tamaño):
# Lista de posibles unidades para el tamaño del archivo
unidades = ["B", "KB", "MB", "GB", "TB"]

# Encuentra la unidad apropiada para el tamaño del archivo
indice_unidad = 0
while bytes_tamaño >= 1024 and indice_unidad < len(unidades) - 1:
bytes_tamaño /= 1024
indice_unidad += 1

# Formatea el tamaño con dos decimales y la unidad correspondiente
return f"{bytes_tamaño:.2f} {unidades[indice_unidad]}"

# Ejemplo de uso
tamaño_archivo_formateado = convertir_tamaño(tamaño_archivo)
print(f"El tamaño del archivo es: {tamaño_archivo_formateado}")

Esta función auxiliar toma el tamaño del archivo en bytes como entrada y lo convierte a la unidad más apropiada (por ejemplo, kilobytes, megabytes) con dos decimales. El tamaño del archivo formateado luego se puede mostrar o utilizar según sea necesario.

  1. Si deseas obtener el tamaño de un archivo en un servidor remoto, puedes usar la biblioteca requests en Python. Comienza instalándola usando pip:
   pip install requests
  1. Después de instalar requests, puedes importarla al comienzo de tu script:
   import requests
  1. Para obtener el tamaño de un archivo remoto, debes enviar una solicitud HEAD al servidor y recuperar el encabezado "Content-Length" de la respuesta. Aquí tienes un ejemplo:
   url_archivo = "https://ejemplo.com/ruta/al/archivo/remoto.txt"
respuesta = requests.head(url_archivo)
tamaño_archivo = int(respuesta.headers["Content-Length"])

Después de ejecutar este código, la variable tamaño_archivo contendrá el tamaño del archivo remoto en bytes.

  1. De manera similar al ejemplo del archivo local, puedes usar la función convertir_tamaño() para formatear el tamaño del archivo de manera más legible.

¡Y eso es todo! Ahora tienes un tutorial detallado paso a paso sobre cómo obtener el tamaño de un archivo en Python.