Maison  >  Article  >  développement back-end  >  Comment accéder et convertir des données EXIF ​​en noms de balises en Python ?

Comment accéder et convertir des données EXIF ​​en noms de balises en Python ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-10-22 18:02:02886parcourir

How to Access and Convert EXIF Data to Tag Names in Python?

Accès aux données EXIF ​​en Python

Lorsque vous travaillez avec des images, il est souvent nécessaire de récupérer des informations telles que le modèle de l'appareil photo, le temps d'exposition et d'autres métadonnées. Ces données sont stockées dans les métadonnées EXIF ​​(Exchangeable Image File Format) de l'image.

Pour accéder aux données EXIF ​​en Python à l'aide de la PIL (Python Imaging Library), suivez ces étapes :

Lire EXIF ​​comme dictionnaire

  1. Importez le module PIL :

    <code class="python">import PIL.Image</code>
  2. Ouvrez l'image dont vous souhaitez extraire les données :

    <code class="python">img = PIL.Image.open('img.jpg')</code>
  3. Utilisez la méthode _getexif() pour récupérer les données EXIF ​​sous forme de dictionnaire indexé par des balises numériques EXIF :

    <code class="python">exif_data = img._getexif()</code>

Conversion des balises numériques en noms de balises

Si vous préférez que les clés du dictionnaire soient les véritables chaînes de nom de balise EXIF, vous pouvez convertir les balises numériques à l'aide du module PIL.ExifTags :

<code class="python">import PIL.ExifTags

exif = {
    PIL.ExifTags.TAGS[k]: v
    for k, v in img._getexif().items()
    if k in PIL.ExifTags.TAGS
}</code>

Cela vous donnera un dictionnaire avec des clés telles que « DateTimeOriginal » et « Make » au lieu de balises numériques comme 306 et 271.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn