Supprimer des fichiers dans une archive ZIP en Python

Les archives ZIP sont couramment utilisées pour compresser et stocker plusieurs fichiers et dossiers. Bien que la création et l’extraction d’archives ZIP soient une tâche courante, vous devrez parfois supprimer des fichiers ou des dossiers spécifiques d’une archive ZIP existante. Python propose diverses bibliothèques pour travailler avec les archives ZIP, et une bibliothèque puissante est Aspose.ZIP for Python. Apprenons donc comment supprimer des fichiers d’une archive ZIP en Python.

Bibliothèque Python pour supprimer des fichiers dans les archives ZIP

Aspose.ZIP for Python est une bibliothèque riche en fonctionnalités pour travailler avec des archives ZIP. Il fournit des moyens simples et efficaces pour créer, manipuler et extraire des fichiers et des dossiers à partir d’archives ZIP en Python. Nous utiliserons cette bibliothèque pour supprimer des fichiers des archives ZIP.

Vous pouvez soit télécharger la bibliothèque, soit l’installer à partir de PyPI.

> pip install aspose-zip

Supprimer des fichiers dans une archive ZIP en Python

Vous pouvez accéder et supprimer les fichiers d’une archive ZIP de deux manières : par nom ou par index. La suppression d’un fichier par son nom est utile lorsque vous connaissez exactement le nom de l’entrée du fichier dans l’archive ZIP. Ou vous devez supprimer tous les fichiers contenant un mot ou une expression particulière dans leur nom. En revanche, la suppression de fichiers par index est utilisée lorsque l’on connaît exactement l’ordre des fichiers dans l’archive ZIP.

Examinons donc les deux manières en détail.

Supprimer un fichier d’un ZIP par nom

Pour supprimer des fichiers par nom, vous devez d’abord filtrer les fichiers correspondant/contenant le mot/l’expression que vous fournissez. Une fois que vous avez la liste des fichiers à supprimer, vous pouvez les supprimer de l’archive ZIP un par un. Voici les étapes pour supprimer des fichiers d’une archive ZIP en Python.

  • Tout d’abord, chargez le fichier ZIP à l’aide de la classe Archive.
  • Ensuite, parcourez les fichiers de l’archive ZIP.
  • Filtrez les fichiers/dossiers requis et ajoutez-les à une liste.
  • Supprimez chaque entrée de la liste filtrée à l’aide de la méthode Archive.deleteentry(ArchiveEntry).
  • Enfin, enregistrez l’archive ZIP mise à jour à l’aide de la méthode Archive.save().

L’extrait de code suivant montre comment supprimer des fichiers dans une archive ZIP en Python.

import aspose.zip as az

# Charger l'archive ZIP
with az.Archive("my_archive.zip") as archive:
    # Liste pour conserver les fichiers à supprimer
    entriesToDelete = []
    
    # Parcourez les entrées ZIP
   for entry in archive.entries:
        # Ajouter un fichier/dossier dans la liste
        if "2" in entry.name.lower():
            entriesToDelete.append(entry)
    
    # Supprimer toutes les entrées répertoriées
   for entry in entriesToDelete:
        archive.delete_entry(entry)
    
    # Enregistrer l'archive ZIP mise à jour
    archive.save("updated-archive.zip")

Supprimer des fichiers dans un ZIP par index

Voici les étapes pour supprimer un fichier de l’archive ZIP à l’aide de son index.

  • Tout d’abord, chargez le fichier ZIP à l’aide de la classe Archive.
  • Ensuite, supprimez l’entrée requise du ZIP à l’aide de la méthode Archive.deleteentry(index).
  • Enfin, enregistrez l’archive ZIP mise à jour à l’aide de la méthode Archive.save().

L’extrait de code ci-dessous montre comment supprimer un fichier d’une archive ZIP par index.

import aspose.zip as az

# Charger l'archive ZIP
with az.Archive("my_archive.zip") as archive:
    
    # Supprimer l'entrée à l'index 0
    archive.delete_entry(0)

    # Enregistrer l'archive ZIP mise à jour
    archive.save("updated-archive.zip")

Bibliothèque ZIP Python - Obtenez une licence gratuite

Vous pouvez supprimer des fichiers dans les archives ZIP sans limitations d’évaluation en obtenant une licence temporaire gratuite.

Ressources d’apprentissage

Apprenez-en plus sur notre bibliothèque Python ZIP en utilisant les ressources ci-dessous :

Outils ZIP en ligne

Nous avons également développé des outils en ligne utiles pour travailler avec les archives ZIP. Ces outils sont absolument gratuits et sont alimentés par Aspose.ZIP for Python.

Conclusion

Dans cet article de blog, nous avons exploré comment supprimer des fichiers d’une archive ZIP en Python. Nous avons expliqué comment supprimer des fichiers des archives ZIP par nom ou par index. Que vous ayez besoin de supprimer des fichiers indésirables d’une archive ZIP existante ou d’effectuer d’autres tâches liées à ZIP, Aspose.ZIP for Python est là pour vous. Installez simplement la bibliothèque et enrichissez votre application Python avec des fonctionnalités avancées d’archivage ZIP.

Voir également