Python EXIF找不到拍摄日期信息,但通过Windows属性查看时存在

2024-04-02

我需要按拍摄日期提取和组织照片。 Windows 10、Python 2.7。我一直在这样做

from PIL import Image
def get_date_taken(path):
    return Image.open(path)._getexif()[36867]

下列的:

使用 PIL 从 EXIF 数据获取照片拍摄的日期和时间 https://stackoverflow.com/questions/23064549/get-date-and-time-when-photo-was-taken-from-exif-data-using-pil

这对于某些照片来说非常有用。

伟大的。现在抓取一组不同的图像,新相机,属性看起来相似。

但字典完全不同

Image.open(image)._getexif()[36867]
Traceback (most recent call last):
  Debug Probe, prompt 369, line 1
KeyError: 36867
Image.open(image)._getexif()
{36864: '0220', 37121: '\x01\x02\x03\x00', 40962: 2048, 40963: 1536, 40960: '0100', 40961: 1, 296: 2, 34665: 90, 34855: 1600, 531: 2, 282: (72, 1), 283: (72, 1), 37500: '\x01\xf1\x03\x00\x03\x00\x00\x00\x11 ....

我也尝试过exifread

a=exifread.process_file(open(image,'rb'))
a.keys()
['EXIF MakerNote', 'Image ExifOffset', 'EXIF ExposureTime', 'EXIF ComponentsConfiguration', 'Image YCbCrPositioning', 'Image XResolution', 'EXIF FlashPixVersion', 'EXIF ISOSpeedRatings', 'Image YResolution', 'EXIF ColorSpace', 'EXIF ExifImageLength', 'EXIF ExifVersion', 'Image ResolutionUnit', 'EXIF ExifImageWidth']

但没有拍摄日期。 windows 读什么而 python 不读?关于还有什么可以尝试的建议,我需要担心跨平台吗?与这里相同的问题:

“拍摄日期”未显示在图像 PropertyItems 中,而显示在 Windows 资源管理器的文件详细信息(文件属性)中 https://stackoverflow.com/questions/14308284/date-taken-not-showing-up-in-image-propertyitems-while-it-shows-in-file-detail

但在Python中。这个友好的在线元数据查看器

http://exif.regex.info/exif.cgi http://exif.regex.info/exif.cgi

表明这两个图像在 exif 中都有创建日期标签。还有什么方法可以访问它们?

有问题的图像示例是here https://www.dropbox.com/s/8fue8vufgebihuy/p1d107s100i10.JPG?dl=0


我使用 exifread 库做到了。这是我的 python 代码片段。

import exifread
for filename in os.listdir(directoryInput):
    if filename.endswith('.JPG'):
        with open("%s/%s" % (directoryInput, filename), 'rb') as image: # file path and name
            exif = exifread.process_file(image)
            dt = str(exif['EXIF DateTimeOriginal'])  # might be different
            # segment string dt into date and time
            day, dtime = dt.split(" ", 1)
            # segment time into hour, minute, second
            hour, minute, second = dtime.split(":", 2)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python EXIF找不到拍摄日期信息,但通过Windows属性查看时存在 的相关文章

  • 如何在Python的SciPy中更改稀疏矩阵中的元素?

    我构建了一个小代码 我想用它来解决涉及大型稀疏矩阵的特征值问题 它工作正常 我现在要做的就是将稀疏矩阵中的一些元素设置为零 即最顶行中的元素 对应于实现边界条件 我可以调整下面的列向量 C0 C1 和 C2 来实现这一点 不过我想知道是否有
  • Google App Engine queue.yaml 无法在开发服务器中工作

    我无法让 dev appserver py 识别我使用queue yaml 创建的自定义队列 他们没有出现在http localhost 8000 taskqueue http localhost 8000 taskqueue 当我尝试向其
  • 如何在Python中流式传输和操作大数据文件

    我有一个相对较大 1 GB 的文本文件 我想通过跨类别求和来减小其大小 Geography AgeGroup Gender Race Count County1 1 M 1 12 County1 2 M 1 3 County1 2 M 2
  • Sublime Text 插件开发中的全局 Python 包

    一 总结 我不知道 Sublime Text 插件开发人员如何使用 Sublime Text 查找全局 Python 包 而不是 Sublime Text 目录的 Python 包 Sublime Text使用自己的Python环境 而不是
  • 补丁 - 为什么相对补丁目标名称不起作用?

    我已经从模块导入了一个类 但是当我尝试修补类名而不使用模块作为前缀时 出现类型错误 TypeError Need a valid target to patch You supplied MyClass 例如 以下代码给出了上述错误 imp
  • Python 中的流式传输管道

    我正在尝试使用 Python 将 vmstat 的输出转换为 CSV 文件 因此我使用类似的方法转换为 CSV 并将日期和时间添加为列 vmstat 5 python myscript py gt gt vmstat log 我遇到的问题是
  • Python3.0 - 标记化和取消标记化

    我正在使用类似于以下简化脚本的内容来解析较大文件中的 python 片段 import io import tokenize src foo bar src bytes src encode src io BytesIO src src l
  • Emacs 24.x 上的 IPython 支持

    我对 IPython 与 Emacs 的集成感到困惑 从 Emacs 24 开始 Emacs 附带了自己的python el 该文件是否支持 IPython 还是仅支持 Python 另外 维基百科 http emacswiki org e
  • 使用Python计算目录的大小?

    在我重新发明这个特殊的轮子之前 有没有人有一个很好的例程来使用 Python 计算目录的大小 如果例程能够很好地以 Mb Gb 等格式格式化大小 那就太好了 这会遍历所有子目录 总结文件大小 import os def get size s
  • 使用 Pandas 计算 delta 列

    我有一个数据框 如下所示 Name Variable Field A 2 3 412 A 2 9 861 A 3 5 1703 B 3 5 1731 A 4 0 2609 B 4 0 2539 A 4 6 2821 B 4 6 2779 A
  • Jython 和 SAX 解析器:允许的实体不超过 64000 个?

    我做了一个简单的测试xml saxJython 中的解析器在处理大型 XML 文件 800 MB 时遇到以下错误 Traceback most recent call last File src project xmltools py li
  • 将seaborn.palplot轴添加到现有图形中以可视化不同调色板

    将seaborn人物添加到子图中是usually https seaborn pydata org examples cubehelix palette html创建图形时通过传递 ax 来完成 例如 sns kdeplot x y cma
  • Mac OSX 10.6 上的 Python mysqldb 不工作

    我正在使用 Python 2 7 并尝试让 Django 项目在 MySQL 后端运行 我已经下载了 mysqldb 并按照此处的指南进行操作 http cd34 com blog programming python mysql pyth
  • SocketIO + Flask 检测断开连接

    我在这里有一个不同的问题 但意识到它可以简化为 如何检测客户端何时从页面断开连接 关闭其页面或单击链接 换句话说 套接字连接关闭 我想制作一个带有更新用户列表的聊天应用程序 并且我在 Python 上使用 Flask 当用户连接时 浏览器发
  • 当数据库不是 Django 模型时,是否可以使用数据库中的表?

    是否可以从应用程序数据库中的表获取查询集 该表不是应用程序中的模型 如果我有一个不是名为 cartable 的模型的表 从概念上讲 我想这样做 myqueryset cartable objects all 有没有相对简单的方法来做到这一点
  • 混淆矩阵不支持多标签指示符

    multilabel indicator is not supported是我在尝试运行时收到的错误消息 confusion matrix y test predictions y test is a DataFrame其形状为 Horse
  • python 线程安全可变对象复制

    Is 蟒蛇的copy http docs python org 2 library copy html模块线程安全吗 如果不是 我应该如何在 python 中以线程安全的方式复制 deepcopy 可变对象 蟒蛇的GIL http en w
  • TKinter 中的禁用/启用按钮

    我正在尝试制作一个像开关一样的按钮 所以如果我单击禁用按钮 它将禁用 按钮 有效 如果我再次按下它 它将再次启用它 我尝试了 if else 之类的东西 但没有成功 这是一个例子 from tkinter import fenster Tk
  • 使用ssl和socket的python客户端身份验证

    我有一个 python 服务器 需要客户端使用证书进行身份验证 我如何制作一个客户端脚本 使用客户端证书由 python 中的服务器使用 ssl 和套接字模块进行身份验证 有没有仅使用套接字和 ssl 而不扭曲的示例 from OpenSS
  • 查找总和为给定数字的值组合的函数

    这个帖子查找提供的 Sum 值的组合 https stackoverflow com a 20194023 1561176呈现函数subsets with sum 它在数组中查找总和等于给定值的值的组合 但由于这个帖子已经有6年多了 我发这

随机推荐

  • 来自 Jenkins 的参考 Xcode 版本号

    我正在尝试在 Jenkins Build 中获取对 Xcode 项目 CFBundleVersionString 或 CFBundleVersion 的引用 我的目标是能够以这种方式设置内部版本号 CFBundleVersionString
  • Python 中 pickle 的常见用例

    我看过pickle http en wikipedia org wiki Pickle 28Python 29文档 但我不明白 pickle 在哪里有用 pickle 的一些常见用例有哪些 我遇到过的一些用途 1 将程序的状态数据保存到磁盘
  • 如何最大化和最小化div(没有jquery只有javascript)

    你好 我需要仅使用javascript而不是jquery来最大化或最小化我的html页面中的div 我希望能够这样做http jsfiddle net miqdad Qy6Sj 1 http jsfiddle net miqdad Qy6S
  • 如何在 winform 中托管带有 UI 的控制台 exe

    我正在开发一个具有某些特定要求的项目 我需要创建一个可以使用 C 监视并在其中运行 exe 的程序 然而 使用控制台程序来实际托管另一个exe的方法似乎没有尽头 所以我使用了WinForm 我一直在寻找并找到了一些非常好的解决方案 它在 W
  • 在PowerShell中获取PATH环境变量

    我想检查 PowerShell 中的 PATH 环境变量 我试过了 Get ChildItem env path 我想获得完整的路径 但只获得其中的很小一部分 我得到多少取决于 PowerShell 窗口的宽度 例如 C Program F
  • Google API 客户端机密错误 (Python)

    我想从 Google Analytics 检索数据 我已经在控制台中创建了一个服务帐户 并且我正在使用 Google 的 Python hello analytics api v3 py 代码来访问数据 我已经复制了client secre
  • Mac OS Cocoa:在画布上绘制一个简单的像素

    我希望我能找到这个问题的答案 我搜索了又搜索 找不到正确的答案 这是我的情况 在 Mac OS Cocoa 应用程序中 我想在应用程序窗口的专用区域上绘制一个像素 实际上是几个像素 我想 如果有一个就更好了NSImageView放置在那里
  • 对多列进行 GroupBy 并应用移动功能

    假设我有这个数据集 Country id Company id Date Company value 1 1 01 01 2018 1 1 1 02 01 2018 0 1 1 03 01 2018 2 1 1 04 01 2018 NA
  • 如何在jest和enzyme中设置useState Hook的初始状态?

    目前我正在使用带有反应钩子的功能组件 但我无法测试useState完全挂钩 考虑这样一个场景 useEffect钩子我正在执行 API 调用并在中设置值useState 对于笑话 酶 我模拟了要测试的数据 但我无法设置初始状态值useSta
  • 有没有一个工具可以检测重复的接口 GUID?

    这是一个典型的复制粘贴错误 如果复制粘贴某些包含带有 GUID 的接口声明的 Delphi 代码 Delphi 将不会抱怨并编译在不同位置重复使用相同 GUID 的代码 支持 功能基于 GUID 与接口配合使用 因此可能会出现错误 是否有可
  • dotNet(或 C#)中是否考虑了闰秒?

    DateTime 结构会处理这个问题吗 还有其他类 结构吗 更新 我现在读到闰秒只提前 6 个月宣布 因为地球的自转不是那么可预测的 由于在未来的日期中不可能实现这一点 我可以想象他们只是省略了它们 据我所知 NET 的 DateTime
  • 如何在瘦控制台窗口中查看调试代码?

    在 Mongrel 中 我们能够看到任何 ruby 调试代码 安装 Thin 并执行后thin start 我在控制台窗口上没有看到任何调试代码 这是正常的吗 我们应该使用tail f log development log在新的控制台窗口
  • 如何指定Qmake自动生成的资源文件?

    我有一个带有德语翻译的 Qt 项目 Translation de ts 自动编译成Translation de qm通过 Qmake TRANSLATIONS Translation de ts QMAKE EXTRA COMPILERS
  • Fluent-NHibernate 是否支持映射到过程?

    我一直想知道是否可以让 Fluent NHibernate 与已经存在的存储过程进行通信 并将结果集的映射分配给我自己的域对象 Fluent NHibernate 是否能够直接执行不返回结果集的过程 基本上 我一直在考虑使用 Fluent
  • Math.cos() 给出错误结果

    根据 Wolfram Mathematica 的说法 cos 50 0 6427876096865394 但是 Java 中的这段代码 System out println Math cos 50 gives 0 9649660284921
  • SongsController#index 中的 NameError 未初始化常量 Song::FriendlyId

    所以 我有一个应用程序 用户可以在其中进行大量的社交分享 因此 链接必须看起来很漂亮 我已经安装了友好 ID 宝石 http rubydoc info github norman friendly id master 但似乎收到此错误 Na
  • SQL Server:为第 1 列中的每个唯一值插入一个新行

    使用 SQL Server 我尝试查找表的第 1 列中的每个唯一值 然后使用该唯一的第 1 列值插入新行并添加第 2 列值 第 2 列的值每次都相同 需要注意的是 我可以通过从第 1 列的数据库中提取唯一值并为每个值添加一个插入来完成此操作
  • Delphi XE4 iOS 应用程序可以在模拟器上运行,但不能在调试设备上运行

    我让应用程序在加载应用程序时显示其指定的背景图像 然后在启动时运行此代码会崩溃 unzip own resources like images data files ettc FAppDataDirPath GetHomePath Path
  • iOS 自毁单例设计模式

    我最近遇到一个问题 其中我只希望特定对象存在一个实例 并且仅存在执行特定操作所需的短暂时间 它的操作是异步的 因此如果我没有保存对它的引用 ARC 会在运行循环结束时释放它 如果我确实保留它 我将需要委托回调或通知来知道何时完成释放它 该对
  • Python EXIF找不到拍摄日期信息,但通过Windows属性查看时存在

    我需要按拍摄日期提取和组织照片 Windows 10 Python 2 7 我一直在这样做 from PIL import Image def get date taken path return Image open path getex