Taille originale d'un fichier compressé gzip
sebsauvage
Messages postés
33415
Statut
Modérateur
-
sebsauvage Messages postés 33415 Statut Modérateur -
sebsauvage Messages postés 33415 Statut Modérateur -
Hello everyone.
Voilà mon problème:
J'utilise le module gzip de Python.
Je cherche à connaître la taille originale d'un fichier compressé en gzip.
Est-ce que je suis obligé d'ouvrir le fichier .gz avec le module gzip, et de faire un seek/tell ?
Ou bien bricoler moi même une routine qui parse les entêtes du fichier gz ?
Merci d'avant si vous avez une idée...
Voilà mon problème:
J'utilise le module gzip de Python.
Je cherche à connaître la taille originale d'un fichier compressé en gzip.
Est-ce que je suis obligé d'ouvrir le fichier .gz avec le module gzip, et de faire un seek/tell ?
Ou bien bricoler moi même une routine qui parse les entêtes du fichier gz ?
Merci d'avant si vous avez une idée...
A voir également:
- Taille originale d'un fichier compressé gzip
- Comment réduire la taille d'un fichier - Guide
- Fichier bin - Guide
- Comment ouvrir un fichier epub ? - Guide
- Fichier rar - Guide
- Fichier .dat - Guide
2 réponses
C'est toi le spécialiste python ici :-)
C'est vrai que c'est dommage de l'ouvrir juste pour ça...
Déjà un lien : http://www.ietf.org/rfc/rfc1952.txt
A mon avis tripatouiller dans les header serait intéressant.
Si Python ne fournit pas de fonction pour récupérer chaque header (à vrai dire ça m'étonne) regarde du côté de :
ISIZE (Input SIZE)
This contains the size of the original (uncompressed) input
data modulo 2^32.
C'est vrai que c'est dommage de l'ouvrir juste pour ça...
Déjà un lien : http://www.ietf.org/rfc/rfc1952.txt
A mon avis tripatouiller dans les header serait intéressant.
Si Python ne fournit pas de fonction pour récupérer chaque header (à vrai dire ça m'étonne) regarde du côté de :
ISIZE (Input SIZE)
This contains the size of the original (uncompressed) input
data modulo 2^32.
seb : T'es certain qu'aucune fonction n'est disponible ??? C'est quand même le B. A. BA d'une librairie.
Ben oui.
Tout ce que j'ai dans la librairie gz, c'est un object ZipFile qui me renvoie un descripteur de fichier.
Tout ce que je peux faire c'est les classiques seek/read/tell...
Rien pour connaître la taille. C'est dommage.
J'ai essayé en zip, ça marche. Par contre j'ai des bizarreries sur les dates de fichiers (arg).
Tout ce que j'ai dans la librairie gz, c'est un object ZipFile qui me renvoie un descripteur de fichier.
Tout ce que je peux faire c'est les classiques seek/read/tell...
Rien pour connaître la taille. C'est dommage.
J'ai essayé en zip, ça marche. Par contre j'ai des bizarreries sur les dates de fichiers (arg).
ça m'obligerais à parser et décompresser les entêtes. Pas glop.
Bon tant pis je repasse à zip... merci quand même !
Il y a une autre possibilité : winrar (disponible sur www.telecharger.com)
1. tu ouvre winrar
2. tu recherche ton ficgier gz dans l'arborescence du disque
3. tu vois la taille originale du fichier.
Je me vois mal piloter Winrar à partir de Python.