Comment compresser et décompresser des fichiers en utilisant Python.
Le zippage est un moyen classique de compresser de nombreux fichiers et de les incorporer en un seul. Cela permet de conserver non seulement l’espace de stockage mais aussi le transfert de données lors du déplacement de documents sur un réseau. L’une des meilleures caractéristiques de zip est qu’il fonctionne sur toutes les grandes plateformes : Windows, Linux et Mac.
Zip utilise la compression sans perte pour s’assurer qu’il conserve toutes les données lors de la compression ainsi que de la décompression. Vous pouvez également sécuriser et décrypter vos données zip.
Avec de nombreuses fonctionnalités à découvrir, découvrez comment vous pouvez lire, compresser, ainsi que décompresser des fichiers en utilisant le composant Python zipfile.
Qu’est-ce que le module zipfile ?
Vous pouvez utiliser le module commun zipfile pour ajuster les données zip en utilisant Python. Avec ce module, vous pouvez ouvrir et également vérifier les données zip, examiner leurs métadonnées, produire une donnée zip, la presser, ainsi que dézipper les fichiers. Il existe trois approches de compression : Deflate, Bzip2, et aussi LZMA.
L’une des choses que le module n’a pas, c’est la capacité de traiter les fichiers multi-disques, pourtant il traite l’extension ZIP64. Il peut également décrypter les archives zip mais pas les crypter. En utilisant le module zipfile, vous pouvez obtenir les métadonnées du fichier zip telles que le jour et l’heure de l’ajustement. Vous pouvez en outre récupérer des informations comme le système d’exploitation utilisé pour créer les documents, la variation de zip, et la taille des documents en style compressé et non compressé.
Comment zipper des fichiers en utilisant Python
Vous pouvez fouetter de nombreux documents dans une seule archive en utilisant le composant zipfile de Python. Importez le ZipFile depuis le module zipfile pour exécuter les opérations de fermeture éclair requises. De même, importez le module os pour prélever et conserver les fichiers.
Définissez une fonctionnalité get _ all_file_paths(). Elle doit approuver un paramètre répertoire qui contient le chemin d’accès au dossier comprenant les données à zoomer.
Initialiser un listing vide qui va certainement sauvegarder la liste des chemins des documents. Utilisez une échappatoire for pour obtenir le contenu complet du site de répertoire cible en utilisant le paramètre de répertoire. os. walk() fonction. Cette fonction apporte les noms de fichiers dans une arborescence de site de répertoire en se relocalisant le long de celle-ci dans une méthode descendante ou ascendante. Pour chaque répertoire, la fonction renvoie un trois-tuple ayant la racine, les répertoires, et aussi les documents.
L’origine est une chaîne de caractères qui contient le chemin complet vers le site du répertoire. La liste de contrôle dirs est constituée de tous les sous-répertoires inclus dans le répertoire. La liste de contrôle des fichiers contient tous les fichiers existant dans le répertoire.
À l’intérieur de la loophole, proclamez une autre loophole pour itérer sur la liste de contrôle des fichiers. Utilisez la os. path.join() pour combiner le nom du répertoire avec chaque nom de fichier afin de créer un chemin complet. Ensuite, ajoutez ce nom de fichier complet à la liste de contrôle que vous avez produite précédemment. Dès que cette procédure fait surface, renvoyez la liste de contrôle des parcours de données.
Stockez le parcours vers le dossier qui contient les données que vous voulez fouetter dans une variable appelée répertoire. Appelez la fonction, get _ all_file_paths() que vous avez développée précédemment et enregistrez également la valeur qu’elle renvoie dans la variable file _ paths.
Affichez un message à l’individu pour lui faire comprendre que ce sont les données que le programme va certainement zipper. Répétez sur les fichiers et présentez leurs noms.
Passez le nom que vous souhaitez que vos données zip aient ainsi que les exigences que le programme retourne une donnée inscriptible en utilisant l’instruction with pour traiter les exceptions. Répétez sur chaque documents et utilisez la fonction write() sur le fichier inscriptible vers un documents zip.
Lorsque la procédure est terminée, résultat un message décrivant que le programme a zippé tous les fichiers de manière efficace.
Comment dézipper des fichiers en utilisant Python.
L’exécution du dézippage des données en utilisant le composant zipfile est beaucoup plus facile. Importez le composant zipfile du paquetage ZipFile et stockez également le nom du fichier zip que vous avez l’intention de retirer dans une variable. Faites usage de la déclaration with pour traiter les exceptions et ouvrez le fichier que vous voulez extraire dans le paramètre read. Faites appel à la déclaration printdir() pour afficher la tabulation des documents existant dans le zip.
Affichez un message de progression indiquant que vous êtes en train d’extraire les données et faites également usage de la fonction
extractall() pour retirer les composants des données zip sur le site du répertoire de travail actuel. Alternativement, vous pouvez consister d’une spécification de cours pour modifier le cours où le programme essences les données.
Affichez un message en utilisant la fonction imprimer déclaration sur l’achèvement de l’opération.
En savoir plus sur les fichiers Zip
Les documents Zip ont en fait gagné beaucoup d’attrait et sont également utilisés depuis des années actuellement. Des sites internet populaires tels que GitHub ainsi que Google Drive vous permettent de télécharger une collection de documents sous forme d’archive zip. Le programme zip comprime une collection de documents en un seul plan. Cela reste à l’opposé d’un outil comme tar qui regroupe les données mais ne les compresse pas.
Si vous avez l’intention de sécuriser vos données en utilisant une formule plus fiable, les données RAR sont la voie à suivre. Le RAR utilise l’algorithme AES-128 qui est bien meilleur que l’algorithme deflate utilisé par les documents zip. En fin de compte, choisissez celui qui répond le mieux à votre demande.
Abonnez-vous à notre bulletin d’information
Comment décompresser un fichier en Python ?
Python3. # dans un emplacement spécifique. Importer le module zipfile Créer un objet fichier zip en utilisant la classe ZipFile. Appeler la méthode extract() sur l’objet fichier zip et passer le nom du fichier à extraire et le chemin où le fichier devait être extrait et Extraire le fichier spécifique présent dans le zip.
Comment compresser ou décompresser un fichier ?
Compresser et décompresser des fichiers.
- Localisez le fichier ou le dossier que vous voulez compresser.
- Maintenez la pression (ou cliquez avec le bouton droit de la souris) sur le fichier ou le dossier, sélectionnez (ou pointez sur) Envoyer vers, puis sélectionnez Dossier compressé (zippé). Un nouveau dossier zippé portant le même nom est créé au même endroit.
Comment compresser un fichier zip en Python ?
Pour compresser des fichiers individuels dans un fichier ZIP, créez un nouvel objet ZipFile et ajoutez les fichiers que vous souhaitez compresser avec la méthode write(). Avec zipfile. ZipFile() , spécifiez le chemin d’un fichier ZIP nouvellement créé comme premier paramètre file , et définissez le mode du paramètre ‘w’ (écriture).
Comment gzip un fichier en Python ?
Pour compresser un fichier existant en une archive gzip, il faut lire le texte qu’il contient et le convertir en un bytearray. Cet objet bytearray est ensuite écrit dans un fichier gzip. Dans l’exemple ci-dessous, on suppose que le fichier ‘zen. txt’ est présent dans le répertoire courant.