$npx skillfedfor your agent

pyexiv2

Read and write image metadata, including EXIF, IPTC, XMP, ICC Profile.

With conditionsPyPI GraphicsReleased Aug 202680.2K downloads / moGPLv3Platform wheel

Decision gist · record as of 2026-08-14

platform wheels — pyexiv2-2.16.0-cp310-none-macosx_15_0_arm64.whl · pyexiv2-2.16.0-cp310-none-macosx_15_0_x86_64.whl · pyexiv2-2.16.0-cp310-none-manylinux2014_aarch64.whl
v2.16.0 · released 2026-08-02 · Python >=3.8

Yes, if your project is open-source or can accept GPLv3 copyleft. pyexiv2 is actively maintained, has no known vulnerabilities, and offers comprehensive metadata support across major image formats and platforms. Install friction is moderate due to prebuilt wheels; no source build required for standard platforms. Not suitable for proprietary applications.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires CPython ≥3.8.
  • Not thread-safe due to global state in the underlying C++ library.
  • Cannot read images larger than 2GB or modify images larger than 1GB.

License · maintenance · safety

GPLv3 (copyleft) — GPLv3 copyleft license: any application that links or distributes pyexiv2 must also be open-source under a compatible license. Proprietary or closed-source projects cannot use this package.

last release 2026-08-02 (12 days) · last repo commit 2026-08-02 · 246 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 80,241 downloads/mo, #14,304 on PyPI

Verify before relying

pip install pyexiv2

import pyexiv2

image = pyexiv2.Image('photo.jpg')
image.read()
print(image.exif_dict)
  • Whether prebuilt wheels are the only distribution method or if source builds are possible on unsupported platforms.
  • Performance characteristics and typical use-case latency for metadata operations on standard image sizes.
Same gist for agents: .md · .json

What it is and what it does

pyexiv2 is a Python binding to the C++ Exiv2 library that lets you read and write image metadata standards—EXIF, IPTC, XMP, and ICC Profile—directly from Python. It supports opening images by file path or from raw bytes, handles Unicode in both paths and metadata, and works on 64-bit Linux, macOS, and Windows with CPython ≥3.8.

The library is built on pybind11 and exposes the full metadata capabilities of Exiv2, including support for many image formats. However, it has two important limitations: it cannot read images larger than 2GB or modify images larger than 1GB, and it is not thread-safe because the underlying C++ code uses global state.

Use it for

  • Extract EXIF data (camera settings, GPS, timestamps) from photos for cataloging or analysis.
  • Batch-edit image metadata (tags, copyright, keywords) across a photo library.
  • Read or strip ICC color profiles from images for color-management workflows.
  • Embed or modify XMP metadata in images for digital asset management systems.
  • Validate or repair IPTC metadata in press photos or archival images.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if your project is open-source or can accept GPLv3 copyleft.

pyexiv2 is actively maintained, has no known vulnerabilities, and offers comprehensive metadata support across major image formats and platforms. Install friction is moderate due to prebuilt wheels; no source build required for standard platforms. Not suitable for proprietary applications.

Install

pyexiv2 on PyPI

Before you install

Medium install friction: prebuilt wheels available for CPython 3.8 and later on Linux, macOS, and Windows, but no source distribution listed. Active maintenance with a release 12 days ago.

Requires CPython ≥3.8. Not thread-safe due to global state in the underlying C++ library. Cannot read images larger than 2GB or modify images larger than 1GB.

License in practice

GPLv3 copyleft license: any application that links or distributes pyexiv2 must also be open-source under a compatible license. Proprietary or closed-source projects cannot use this package.

Quickstart

pip install pyexiv2

import pyexiv2

image = pyexiv2.Image('photo.jpg')
image.read()
print(image.exif_dict)

Verify before relying

  • Whether prebuilt wheels are the only distribution method or if source builds are possible on unsupported platforms.
  • Performance characteristics and typical use-case latency for metadata operations on standard image sizes.

Package facts

LicenseGPLv3 copyleft
Python supportSupports the current Python release >=3.8
Install frictionMedium. Platform-specific wheel
Runtime dependenciesNone
MaintenanceActively maintained 12 days since the last release
Last repo commit
First released
Downloads80,241 / month, #14,304 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
License :: OSI Approved :: GNU General Public License v3 (GPLv3)Operating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: POSIX :: Linux

Evidence: pyexiv2-2.16.0-cp310-none-macosx_15_0_arm64.whl; pyexiv2-2.16.0-cp310-none-macosx_15_0_x86_64.whl; pyexiv2-2.16.0-cp310-none-manylinux2014_aarch64.whl; pyexiv2-2.16.0-cp310-none-manylinux2014_x86_64.whl; pyexiv2-2.16.0-cp310-none-win_amd64.whl; pyexiv2-2.16.0-cp311-none-macosx_15_0_arm64.whl; pyexiv2-2.16.0-cp311-none-macosx_15_0_x86_64.whl; pyexiv2-2.16.0-cp311-none-manylinux2014_aarch64.whl; pyexiv2-2.16.0-cp311-none-manylinux2014_x86_64.whl; pyexiv2-2.16.0-cp311-none-win_amd64.whl; pyexiv2-2.16.0-cp312-none-macosx_15_0_arm64.whl; pyexiv2-2.16.0-cp312-none-macosx_15_0_x86_64.whl; pyexiv2-2.16.0-cp312-none-manylinux2014_aarch64.whl; pyexiv2-2.16.0-cp312-none-manylinux2014_x86_64.whl; pyexiv2-2.16.0-cp312-none-win_amd64.whl; pyexiv2-2.16.0-cp313-none-macosx_15_0_arm64.whl; pyexiv2-2.16.0-cp313-none-macosx_15_0_x86_64.whl; pyexiv2-2.16.0-cp313-none-manylinux2014_aarch64.whl; pyexiv2-2.16.0-cp313-none-manylinux2014_x86_64.whl; pyexiv2-2.16.0-cp313-none-win_amd64.whl

Tags

Capabilities
read write image metadataexif iptc xmp extractionimage metadata editorphoto metadata libraryexiv2 python binding
Topics
image-metadataexif-iptc-xmpmedia-processing

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “read write image metadata”

  • pyexiv2pyexiv2 reads and writes image metadata (EXIF, IPTC, XMP, ICC…
  • python-xmp-toolkitRead and write XMP metadata in image and document files by wrapping…
  • tifffileRead and write TIFF files and TIFF-like formats (BigTIFF, OME-TIFF,…

Give your agent the search over MCP, or paste the wish link into any chat.

More Graphics packages

pillow Worth it
PyPI · Graphics · released Jul 2026

Pillow adds image processing capabilities to Python, providing file format support, efficient pixel data handling, and image manipulation operations.

Install it if you need to work with images in Python—it is the de facto standard for this task.

MIT-CMUcompiled wheel · 3.10+
547.1Mdownloads / mo
fonttools Worth it
PyPI · Text Processing · released May 2026

fonttools manipulates font files in multiple formats (TrueType, OpenType, AFM, Type 1, Mac-specific) and includes TTX, a tool to convert fonts to and from XML text format.

Install it if you need to read, write, or manipulate fonts programmatically or via the TTX command-line tool.

permissive licensepure Python · 3.10+
235.9Mdownloads / mo
matplotlib-inline Worth it
PyPI · Graphics · released May 2026

Enables matplotlib figures to display inline directly within Jupyter notebooks and IPython environments instead of in separate windows.

BSD-3-Clausepure Python · 3.9+
130.5Mdownloads / mo
pymupdf Worth it
PyPI · Libraries · released Aug 2026

PyMuPDF extracts, renders, converts, and manipulates PDF and other document formats (XPS, EPUB, images, Office files via Pro) with high performance, providing text, tables, images, and metadata with precise layout information.

The AGPL license requires careful review if you are building proprietary software—commercial licensing is available from Artifex.

AGPLcompiled wheel · 3.10+
114.9Mdownloads / mo
pypdfium2 Worth it
PyPI · Libraries · released Aug 2026

pypdfium2 is a Python binding to PDFium that enables PDF rendering, inspection, manipulation, and creation through a ctypes interface to Google's PDFium library.

Install it if you need PDF rendering, inspection, or manipulation in Python; the medium install friction is offset by comprehensive platform support.

permissive licensecompiled wheel · 3.6+
76.9Mdownloads / mo
altair Worth it
PyPI · Graphics · released Jun 2026

Altair is a declarative Python library for creating interactive statistical visualizations by writing simple, readable code that compiles to Vega-Lite specifications.

BSD-3-Clausepure Python · 3.10+
54.5Mdownloads / mo

See also PyExifTool · python-xmp-toolkit · piexif · exif · ExifRead · imagesize · tifffile · pillow-heif · ccimport · pybind11