Ouvrir un fichier Zip sans l'extraire en Python

Najwa Riyaz 10 octobre 2023
  1. Utilisez la fonction zipfile.ZipFile() pour ouvrir un fichier zip sans l’extraire temporairement en Python
  2. Utilisez la fonction ZipFile.open() pour ouvrir un fichier zip sans l’extraire temporairement en Python
Ouvrir un fichier Zip sans l'extraire en Python

Cet article explique comment ouvrir un fichier zip sans l’extraire temporairement dans le logiciel Python. Pour ouvrir un fichier zip sans l’extraire temporairement en Python, utilisez la bibliothèque Python zipfile.

Pour cela, importez la bibliothèque standard zipfile. Ensuite, utilisez l’une des fonctions suivantes.

  • Utiliser la fonction zipfile.ZipFile() en lecture.
  • Utiliser la fonction ZipFile.open() en lecture.

Avant de commencer, veuillez préparer le fichier zip. Suivez les étapes ci-dessous.

  • Préparez un fichier texte nommé mail.txt avec du contenu à l’intérieur comme :
    This is from mail.txt
    
  • Zipper le fichier mail.txt.
  • Nommez le fichier zip comme mail.zip.

Utilisez la fonction zipfile.ZipFile() pour ouvrir un fichier zip sans l’extraire temporairement en Python

Vous trouverez ci-dessous un exemple de programme qui vous montre comment ouvrir un fichier zip sans l’extraire temporairement en Python. Utilisez la fonction zipfile.ZipFile() en mode lecture de la manière suivante.

zipfile.ZipFile(file, mode="r")

Ici, le file est soit :

  • Un chemin vers un fichier (une chaîne)
  • Un objet de type fichier
  • Un objet en forme de chemin

Par example,

import zipfile

archive = zipfile.ZipFile("mail.zip", "r")
# Let us verify the operation..
txtdata = archive.read("mail.txt")
print(txtdata)

Production:

b'This is from mail.txt'

Utilisez la fonction ZipFile.open() pour ouvrir un fichier zip sans l’extraire temporairement en Python

Voici un exemple qui montre comment ouvrir un fichier zip sans l’extraire temporairement en Python.

Ici, nous utilisons la fonction open() en mode lecture.

ZipFile.open(name, mode="r")

Le membre du fichier zip est traité comme un objet de type fichier binaire. Le name ici peut être soit :

  • Le nom d’un fichier dans le zip
  • Un objet ZipInfo

Voici un exemple.

import zipfile

with zipfile.ZipFile("mail.zip") as thezip:
    with thezip.open("mail.txt", mode="r") as thefile:
        # Let us verify the operation..
        print(thefile.read())

Production:

b'This is from mail.txt'

Article connexe - Python File