You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Pillow提取图片EXIF元数据时IFDRational无法JSON序列化的问题求助

Pillow提取图片EXIF元数据时IFDRational无法JSON序列化的问题求助

各位好,最近我在用Python的Pillow库提取图片的EXIF元数据时碰到了个奇怪的问题,折腾半天没解决,来求助下大家!

我写的代码如下:

import json
from PIL import Image, TiffImagePlugin
import PIL.ExifTags

img = Image.open("/home/user/DSCN0010.jpg")

dct = {
        PIL.ExifTags.TAGS[k]: float(v) if isinstance(v, TiffImagePlugin.IFDRational) else v
        for k, v in img._getexif().items()
        if k in PIL.ExifTags.TAGS
    }

print(json.dumps(dct))

运行这段代码后,却弹出了这个错误提示:

Error processing EXIF data: Object of type IFDRational is not JSON serializable

我明明在字典推导式里已经把所有TiffImagePlugin.IFDRational类型的值转成float类型了,怎么还会出现这个JSON序列化失败的问题呢?

我使用的测试图片是带有GPS信息的JPG示例图DSCN0010.jpg。

备注:内容来源于stack exchange,提问作者Mike Delta

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.14 17:37:59