Hi guy’s !
Aujourd’hui je vais vous parler de diverses méthodes pour lire, écrire et manipuler les informations de métadonnées enregistrées dans plusieurs types de fichiers.
Pour ce faire, j’utiliserai un outil appelé ExifTool. EXIF est l’acronyme de « Exchangeable Image File Format » et c’est une norme pour l’inclusion de métadonnées dans certains types de fichiers.
De nos jours, plusieurs données importantes sont cachées, dissimulées dans les métadonnées des fichiers.
1- Introduction
ExifTool est une bibliothèque Perl développée pour la lecture, l’écriture et la manipulation des métadonnées sur une large gamme de fichiers, en particulier les images JPEG. Ces métadonnées peuvent contenir des informations telles que la marque de l’appareil photo, le type de fichier, les autorisations, la taille du fichier, etc.
ExifTool offre le moyen le plus simple d’extraire les métadonnées des fichiers, il s’agit d’un outil open source.
2- Installation
Je procède à l’installation en utilisant la commande suivante depuis mon terminal (via GitHub) :
git clone https://github.com/exiftool/exiftool.git
Je dois installer le package nécessaire pour l’utiliser :
sudo apt-get install libimage-exiftool-perl
C’est bon, tout est dans mon système, je vais regarder de plus près l’utilisation de cet outil.
3- Utilisation :
Pour extraire l’intégralité des métadonnées d’un fichier, j’’exécute la commande ci-dessous : exiftool Bliss_(Windows_XP).png
À partir de l’image ci-dessus, je remarque que j’ai toutes les informations tirées de mon fichier image, du plus basique au plus avancé.
Cependant, si je devais capturer les identifiants avec les balises Exif au format hexadécimal, je dois exécuter la commande suivante :
exiftool -H Bliss_(Windows_XP).png
Je peux voir qu’il y a beaucoup d’informations stockées dans ces balises Exif.
- Extraire les informations de métadonnées communes
J’utilise la commande qui va me fournir la sortie des balises Exif les plus courantes du fichier image.
exiftool –common Bliss.png
J’ai renommé mon fichier, les parenthèses ne sont pas reconnues.
- Extraire les coordonnées GPS
Les photos que je capture à l’aide de mon smartphone ou de mon appareil photo ont des coordonnées GPS intégrées en tant que métadonnées dans les fichiers image. Pour l’obtenir, il suffit de lancer la commande ci-dessous : je prends l’exemple d’une photo prise à un lieu précisexiftool Photo_04.jpg | grep GPSIci, j’ai obtenu la position GPS, maintenant il suffit de copier et de coller ces informations de coordonnées complètes sur Google Maps et j’obtiendrai l’emplacement exact de l’appareil photo lorsque la photo a été prise (je vous laisse le faire).
- Extraire les métadonnées à l’aide de mots-clés spécifiques
La commande suivante va m’aider à extraire les informations de métadonnées associées à certains mots-clés spécifiques.exiftool « -*image* » Photo_04.jpgJe peux voir que ma commande déclenchée affiche toutes les balises avec des noms contenant le mot « image » du fichier.
- Mode verbeux d’ExifTool
Le mode verbeux génère des informations étendues, c’est-à-dire lorsque j’ajoute -v à la commande exiftool, il m’affichera les données complètes sur le processus qu’il exécute : exiftool -v Bliss.png
- Écriture des métadonnées
ExifTool offre une grande puissance pour écrire la plupart des informations sur les balises EXIF, que n’importe qui peut vouloir modifier, mais certaines balises sont protégées car elles décrivent les caractéristiques physiques de l’image que je ne peux pas modifier, comme la compression. Aussi, d’autres balises comme le GPS, ces informations peuvent être modifiées.Pour manipuler les données Exif, je dois exécuter la commande suivante : exiftool -Make = « Hackingeek » Photo_04.jpg
Les informations stockées dans la balise « Make » sont remplacées par « Hackingeek ». Lors de l’écriture des informations, le script d’ExifTool préserve automatiquement le fichier d’origine en ajoutant « _original » à la fin du nom du fichier.
- Suppression des informations de métadonnées
Jusqu’à présent, j’ai extrait ou manipulé que les données EXIF, mais que se passe-t-il si je veux supprimer toutes les métadonnées d’un fichier image. J’exécute simplement la commande :exiftool -all= Photo_04.jpg
Il montre 1 fichier image téléchargé. Les données EXIF »test.jpg » ont été supprimées efficacement. Je tente de réextraire les métadonnées de « test.jpg », j’obtiens donc que les informations de base de l’image et le reste sont supprimés.
- Enregistrement des sorties dans plusieurs formats
Dans un fichier HTML
Je vais enregistrer la sortie dans un fichier HTML afin de conserver les enregistrements et pour une meilleure lisibilité. Pour ce faire, j’utilise le paramètre -h avec la commande et j’enregistrerai les résultats dans un fichier avec l’extension .html.
exiftool -h Photo_04.jpg > example.html
À cet instant le fichier example.html est généré. Il me reste à l’ouvrir pour vérifier la sortie de données EXIF.
Dans un fichier texte
Il m’est possible d’enregistrer les métadonnées vers un fichier texte similaire à la sortie du HTML. Pour y parvenir, il suffit d’exécuter :
exiftool Photo_04.jpg > test.txt
Je vérifie que tout a bien fonctionné :
cat test.txt
C’est super ! les métadonnées sont stockées dans mon fichier texte.
4- Conclusion
Voici le guide d’utilisation d’Exiftool en tant qu’extracteur de métadonnées. Il est convivial et simple en ligne de commande. Savez-vous qu’il est devenu l’un des meilleurs outils pour extraire des données à partir d’une variété de formats de fichiers ? Si vous avez envie d’aller plus loin avec cet outil référez-vous au menu d’aide ou au manuel (man exiftool) depuis un terminal.
N’hésitez pas à me contacter si vous avez questions ou des soucis d’utilisation de cet outil, je vous dis à très vite dans un prochain article.
PEACE !
No responses yet