Logiciel : Hachoir, le couteau suisse qui découpe vos fichiers binaires
Posté par Victor STINNER (page perso, ). Modéré le 19 août 2006.
Hachoir est un projet permettant de lire toutes les informations contenues dans un fichier binaire. Effectivement, contrairement aux fichiers textes qui se lisent facilement : qui aujourd'hui est capable d'analyser le contenu d'une image PNG à l'aide d'un éditeur hexadécimal ?
La version 0.5, qui vient de sortir, supporte la majorité des formats de fichier « courants ». Cela va de l'image PNG à la vidéo AVI en passant par les archives bzip2 ou encore le système de fichier ext2. Par contre, tous les parseurs ne sont pas encore complets : les zones inconnues sont marquées « raw ».
Le parseur a un fonctionnement totalement paresseux : les informations ne sont lues que lorsqu'elles sont demandées, et les champs ne sont crées que lorsque c'est nécessaire. Il est dès lors possible de lire des fichiers complexes et/ou de grande taille (ex: disque dur de 10 Go).
Hachoir est avant tout une bibliothèque écrite en Python, mais plusieurs scripts l'utilisant sont disponibles. hachoir-metadata permet d'extraire les méta-données : durée d'une musique, taille d'une image, commentaires, etc. hachoir-urwid est une interface interactive permettant d'explorer le contenu d'un fichier. hachoir-grep permet de rechercher une chaîne de caractère dans un fichier, ou simplement lister toutes les chaînes d'un fichier.
NdM : Hachoir est disponible sous licence GNU/GPL
La version 0.5, qui vient de sortir, supporte la majorité des formats de fichier « courants ». Cela va de l'image PNG à la vidéo AVI en passant par les archives bzip2 ou encore le système de fichier ext2. Par contre, tous les parseurs ne sont pas encore complets : les zones inconnues sont marquées « raw ».
Le parseur a un fonctionnement totalement paresseux : les informations ne sont lues que lorsqu'elles sont demandées, et les champs ne sont crées que lorsque c'est nécessaire. Il est dès lors possible de lire des fichiers complexes et/ou de grande taille (ex: disque dur de 10 Go).
Hachoir est avant tout une bibliothèque écrite en Python, mais plusieurs scripts l'utilisant sont disponibles. hachoir-metadata permet d'extraire les méta-données : durée d'une musique, taille d'une image, commentaires, etc. hachoir-urwid est une interface interactive permettant d'explorer le contenu d'un fichier. hachoir-grep permet de rechercher une chaîne de caractère dans un fichier, ou simplement lister toutes les chaînes d'un fichier.
NdM : Hachoir est disponible sous licence GNU/GPL
Site officiel du projet Hachoir (2297 hits)
Informations sur l'installation d'Hachoir (291 hits)
Liste des parseurs disponibles (382 hits)
Liste des nouveautés (154 hits)
DLFP : Journaux de l'auteur annonçant Hachoir (340 hits)
DLFP : Précédente dépêche sur Hachoir (148 hits)
> Lire la dépêche (39 commentaires, moyenne: 3,8).
Vous avez demandé le commentaire #744633.




Packaging
Bonjour,
je peux essayer de packager pour debian (instable / testing / stable)
OpenBSD (je relance bientôt mon serveur)
Gentoo (quand j'aurais réinstallé un petit pc sous gentoo)
Je n'ai jamais packagé pour aucun de ces systèmes, mais je veux bien essayer d'apprendre.
Je veux bien aussi aider pour le code, mais mon experience en python se limite pour le moment a une relecture d'un projet de cours.
En attendant, je vais déjà commencer par lire le code ;)
partisan du libre, j'utilise Debian et OpenBSD
Ma fiertée
[^]Re: Packaging
> Gentoo (quand j'aurais réinstallé un petit pc sous gentoo)
Tu peux virer celui là de ta TODO, je viens de m'y coller :
https://bugs.gentoo.org/show_bug.cgi?id=144532
(par contre, j'ai rien contre les relectures / tests / critiques, évidemment...)
[^]Re: Packaging
> Tu peux virer celui là de ta TODO, je viens de m'y coller :
Et tu viens par la même occasion de me virer une raison d'installer Gentoo par la même occasion. Enfin, je vais quand même réinstaller une gentoo ;)
partisan du libre, j'utilise Debian et OpenBSD
Ma fiertée