La biblioteca rarfile permite abrir y extraer archivos .rar en Python de manera sencilla. Es útil cuando necesitas manipular archivos comprimidos en formato RAR sin depender de herramientas externas.
rarfile
Antes de usar rarfile, necesitas instalar la biblioteca y asegurarte de tener UnRAR instalado en tu sistema.
1. Instalar rarfile:
pip install rarfile
2. Instalar UnRAR (necesario para extraer archivos .rar):
UnRAR.exe desde Rarlab y colócalo en una ubicación accesible.
sudo apt install unrar
brew install unrar
rarfile
Después de instalar UnRAR, debes configurarlo en Python:
import rarfile
# Configurar la ruta de UnRAR manualmente (si es necesario)
rarfile.UNRAR_TOOL = "ruta/a/unrar" # Opcional si unrar está en el PATH
.rar
Puedes listar los archivos dentro de un .rar con el siguiente código:
import rarfile
# Abrir el archivo .rar
archivo_rar = rarfile.RarFile("archivo.rar")
# Listar archivos dentro del .rar
for archivo in archivo_rar.namelist():
print(archivo)
# Cerrar el archivo
archivo_rar.close()
.rar
Para extraer todos los archivos:
import rarfile
# Abrir el archivo .rar
archivo_rar = rarfile.RarFile("archivo.rar")
# Extraer todo el contenido en una carpeta específica
archivo_rar.extractall("carpeta_destino")
# Cerrar el archivo
archivo_rar.close()
Para extraer un archivo específico:
archivo_rar.extract("archivo_dentro_del_rar.txt", "carpeta_destino")
.rar sin extraerlo
Si deseas leer el contenido de un archivo sin extraerlo, puedes usar:
with rarfile.RarFile("archivo.rar") as archivo_rar:
with archivo_rar.open("documento.txt") as archivo:
contenido = archivo.read().decode("utf-8")
print(contenido)
Para más detalles, consulta la documentación de rarfile:
Jorge García
Fullstack developer