Python Tarfile

Python Tarfile
Le format de fichier TAR est utilisé pour stocker ou archiver plusieurs fichiers dans un seul fichier. Ceci est très utile lors de l'envoi ou de la transmission d'une grande quantité / paquet de fichiers au réseau ou lorsque nous avons besoin d'archiver les fichiers plus anciens. Pour le système d'exploitation UNIX, l'utilitaire «TAR» est d'abord introduit. Son objectif est de compiler de nombreux fichiers dans un seul fichier d'archive, souvent appelé tarball, ce qui facilite la distribution des données. Le module TarFile de la bibliothèque standard de Python contient des fonctions qui aident à créer des fichiers ou des archives de goudron et d'extraction de données au besoin à partir du tarball. Les archives peuvent être créées sans compression ou en utilisant GZIP, BZ2 et LZMA.

Quel est le module TarFile à Python?

Nous n'avons pas besoin d'installer le module TarFile explicitement car il fait partie de la bibliothèque standard Python; Tout ce que nous devons faire est de «l'importer». La lecture et l'écriture des archives TAR peuvent être rendues beaucoup plus simples qu'elle ne devrait l'être par les méthodes fournies par le module Python «Tarfile». Le module «TarFile» intégré dans Python fournit une interface puissante pour écrire et lire les fichiers de goudron.

Modes de fichiers pour ouvrir les fichiers de goudron Python

Voici quelques modes de fichiers qui peuvent être utilisés dans Python pour ouvrir un tarfile:

R: Ouvre un fichier de goudron à lire.

R: Ouvre un fichier de goudron et lit une version non compressée de celui-ci.

w ou w: Permet une écriture non compressée en ouvrant un fichier TAR.

A ou A: Ouvre un fichier TAR afin que les données puissent y être ajoutées sans compression.

R: GZ: Ouvre un fichier TAR compressé GZIP pour la lecture.

W: GZ: Ouvre un fichier TAR compressé GZIP pour écrire.

R: BZ2: Ouvre un fichier de goudron compressé BZIP2 pour la lecture.

W: BZ2: Ouvre un fichier de goudron compressé BZIP2 pour l'écriture.

Maintenant, utilisons le module TarFile pour comprendre comment il fonctionne à Python.

Création d'un fichier de goudron

Le module TarFile de Python nous permet de créer des fichiers de goudron. Tout d'abord, ouvrez un fichier de goudron en mode écriture. Ensuite, ajoutez un paquet de fichiers ou un seul fichier au fichier TAR.

Exemple 1: Création d'un fichier TAR à l'aide de la fonction Open ()

Ici, nous utilisons la fonction Open () pour créer un fichier TAR et la méthode Add () pour ajouter d'autres fichiers au fichier TAR.

Sortir

Ici, la première entrée de la méthode Open () est le nom de notre fichier TAR qui doit être créé, suivi par l'argument «W» pour ouvrir le fichier (Tarfile) en mode écriture. Le nom du fichier qui doit être ajouté ou archivé au «.Le fichier tar "est passé à l'intérieur de la méthode Add () en entrée. Nous archivons trois fichiers dans notre fichier TAR à l'aide de la fonction ADD () sur un objet de fichier

Exemple 2: le système d'exploitation.Fonction ListDir () pour créer et lister des fichiers

La méthode ListDir () renvoie une liste de fichiers et répertoires qui résident dans un répertoire spécifié. En utilisant le module TarFile, nous créons d'abord notre tarfile. Ensuite, nous ajoutons les fichiers dans notre fichier TAR à l'aide de la fonction Add (). Après avoir ajouté les fichiers au fichier TAR, nous obtenons une liste de fichiers archivés dans le «.Fichier de goudron en utilisant le système d'exploitation.Fonction ListDir (). Pour utiliser cette fonction, nous devons importer le module OS.

Le fichier TAR «dossier» est créé en archivant tous les fichiers stockés dans le dossier «Data». La fonction getNames () renvoie les noms de fichiers qui sont stockés dans le fichier TAR «dossier».

Comment vérifier si un fichier est TAR ou non

En utilisant la méthode is_tarfile () dans le module TarFile, nous pouvons rapidement déterminer si un fichier a le «.Extension de goudron.

Nous passons le nom du «My_file.Fichier TAR "dans le module is_tarfile () pour vérifier s'il s'agit d'un fichier TAR ou non. La fonction renvoie true, ce qui signifie que le fichier spécifié est un fichier TAR. Vérifions un autre fichier.

Depuis «Note.txt ”n'est pas un fichier tar, la fonction renvoie false en tant que sortie.

Lire un fichier de goudron

La bibliothèque Tarfile peut vous aider à lire les fichiers de goudron sans les extraire d'abord. Le tarfile.Ouvrir (filepath, mode) peut être utilisé pour ouvrir un fichier TAR en Python. Le fichier / chemin est l'emplacement absolu ou relatif du fichier que nous voulons lire. Différents types de paramètres peuvent être utilisés à la place du mode.

Nous pouvons également lire le fichier ouvert en mode compresse. Une méthode de compression peut éventuellement être combinée avec le mode de fonctionnement. Ainsi, le mode [: compression] devient la nouvelle syntaxe. Les abréviations qui soutiennent les méthodes de compression sont les suivantes:

  • gz pour gzip
  • XZ pour LZMA
  • bz2 pour bz2

Dans le code précédent, nous ouvrons d'abord un fichier de goudron bz2 compressé pour l'écriture. Ensuite, nous ouvrons le fichier TAR BZ2 compressé pour la lecture.

Vérification du contenu du fichier TAR

En utilisant la fonction getNames () du module TarFile, nous pouvons afficher le contenu d'un fichier de goudron sans les extraire. La liste des noms de fichiers est renvoyée par la fonction getNames () du module TarFile. Ici, nous ouvrons le fichier en mode «lecture», donc «r» est spécifié comme le deuxième argument de la fonction open ().

Nous avons un «projet.Fichier de goudron en mode de lecture. La fonction getNames () renvoie les noms des fichiers archivés dans le «projet.Fichier de goudron. Pour imprimer les noms de contenu / fichiers, la boucle est utilisée pour itérer les fichiers dans le fichier TAR.

Fichiers en ajoutant dans le fichier TAR

À l'aide de la fonction ADD () à partir du module TarFile, nous pouvons directement ajouter des fichiers à un fichier TAR, tout comme nous l'avons fait lorsque nous avons créé le fichier TAR. Contrairement aux exemples précédents, «A» est transmis à la méthode Open () comme deuxième argument car le fichier doit être ouvert en mode annexe.

Nous utilisons le mode d'ajout pour ouvrir le «projet.Fichier de goudron. Cinq fichiers sont déjà présents dans le «Paoject.Fichier de goudron. Nous ajoutons trois autres fichiers à l'aide de la fonction ADD () sur l'objet de fichier.

Extraction d'un fichier spécifique à partir d'un fichier d'archive TAR

La fonction ExtractFile () de la bibliothèque TarFile peut être utilisée pour extraire un fichier d'un dossier archivé. Cette méthode accepte le nom du fichier en entrée et extrait le fichier spécifié dans notre répertoire de travail. Si vous souhaitez extraire plus d'un fichier, vous devez appeler plusieurs fois le ExtractFile (). Lors de l'extraction d'un membre en tant qu'objet de fichier de l'archive, un membre pourrait être un objet tarinfo ou un nom de fichier. Un «Io.L'objet BufferedReader »revient si un membre est un fichier normal ou un lien. Aucun n'est présenté pour tous les autres membres existants / actuels. Le Keyerror est soulevé si un membre est absent dans le fichier d'archive.

Les livres.Le fichier XML "est extrait du" projet.Fichier de goudron.

Extraction de tous les fichiers du fichier TAR

La fonction Extractall () de la bibliothèque TarFile peut être utilisée pour extraire le fichier zippé entier plutôt qu'un seul fichier particulier. L'image qui suit montre le répertoire avant que les fichiers du fichier archivé ne soient extraits.

L'ensemble du contenu du fichier TAR est extrait dans le dossier de notre répertoire actuel, les «données», par la méthode Extractall (). Maintenant, extrayons les fichiers du fichier archivé dans ce dossier.

Sortir

La fonction a réussi à extraire tous les fichiers dans le dossier spécifié.

Conclusion

Dans cet article, nous avons appris ce que sont les fichiers de goudron ou les archives TAR et comment utiliser le module TarFile de Python pour créer, accéder et gérer les fichiers TAR. Nous avons appris les modes de fichier que nous pouvons utiliser pour ouvrir les fichiers TAR dans les modes de lecture, d'écriture et de compression. Nous avons expliqué les méthodes pour énumérer les fichiers après les avoir archivés en TAR. Nous avons discuté de la façon d'ajouter les fichiers dans le fichier TAR. Nous avons également appris comment un fichier spécifique ou tous les fichiers peuvent être extraits dans le répertoire actuel.