如何使用 Python 读取文件和照片的创建日期


Posted in Python onSeptember 05, 2020

本文记录,如何使用 Python 来抓取,图片或者文件的,创建日期,修改日期

1. 读取照片创建日期(._getexif())

from PIL import Image

imgPath = 'C:/Users/xx/Desktop/xxxxx.jpg'
imge = Image.open(imgPath)
exif_data = imge._getexif()
ImageDate = exif_data[36867]
# 或者 ImageDate = exif_data[306]

print(ImageDate)

# >>> Output:
# >>> 2015:11:07 16:55:42

这种方法,尤其适用于照片数据的读取。使用._getexif()方法,不止能读取创建日期,还能读取很多相机的数据,例如,光圈,焦距什么的。这种方法来抓取,照片的拍摄日期,是比较准确的。因为,很多照片的,创建日期,修改日期,都不是拍摄日期!

但是这种方法,有一个不足!就是,在批量读取照片日期的时候,有些照片日期的格式不一样,会导致处理上的不方便!

2. 读取文件或照片创建日期(os.path.getmtime())

import os
import time

imgPath = 'C:/Users/xx/Desktop/xxxxx.jpg'
ImageDate = time.ctime(os.path.getmtime(imgPath))

print(ImageDate)

# >>> Output:
# >>> Thu Mar 2 22:00:37 2017

这个方法,更为简单,而且解决了,方法1中的,日期不统一的问题。

但是要注意:这个os.path.getmtime()的方法呢,实际上是抓取的文件的‘修改日期';所以,如果是照片,那么这个方法得到的就是,创建日期;但是如果是 Excel 文档类的文件,那么得到的就是你上次保存这个文件的日期,并非创建日期;

若是想得到 Excel 文件的创建日期,而非修改日期,那么就需要使用另一个方法os.path.getctime()即可!其实os.path方法中,还有很多使用的小功能,实则是居家必备好帮手!

但是要注意:同上提到的,很多照片的,创建日期,修改日期,都不是拍摄日期!

3. 读取文件状态中的创建日期(os.stat())

import os
imgPath = 'C:/Users/HP/Desktop/Book10.xlsm'
ImageDate = time.ctime(os.stat(imgPath).st_mtime)

print(ImageDate)

# >>> Output:
# >>> Wed Aug 26 11:39:32 2020

这种方法,和第二种方法很像;只不过是用,os.stat()的方法,读取了文件的各种属性信息,然后用os.stat(imgPath).st_mtime选择创建时间,这个属性!

到此这篇关于用 Python 读取文件和照片的创建日期的文章就介绍到这了,更多相关 Python 读取文件和照片的创建日期内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python字符串过滤性能比较5种方法
Jun 22 Python
Python中的默认参数实例分析
Jan 29 Python
Python lambda函数基本用法实例分析
Mar 16 Python
Pycharm+Scrapy安装并且初始化项目的方法
Jan 15 Python
Python实现监控Nginx配置文件的不同并发送邮件报警功能示例
Feb 26 Python
python输入多行字符串的方法总结
Jul 02 Python
python数据爬下来保存的位置
Feb 17 Python
django实现后台显示媒体文件
Apr 07 Python
Python csv文件记录流程代码解析
Jul 16 Python
Django crontab定时任务模块操作方法解析
Sep 10 Python
pandas数值排序的实现实例
Jul 25 Python
Python 中 Shutil 模块详情
Nov 11 Python
Python filter()及reduce()函数使用方法解析
Sep 05 #Python
Python 在 VSCode 中使用 IPython Kernel 的方法详解
Sep 05 #Python
Python中猜拳游戏与猜筛子游戏的实现方法
Sep 04 #Python
Python实现快速大文件比较代码解析
Sep 04 #Python
基于python实现图片转字符画代码实例
Sep 04 #Python
Python HTMLTestRunner如何下载生成报告
Sep 04 #Python
详解python中的lambda与sorted函数
Sep 04 #Python
You might like
一个oracle+PHP的查询的例子
2006/10/09 PHP
php将会员数据导入到ucenter的代码
2010/07/18 PHP
超级实用的7个PHP代码片段分享
2012/01/05 PHP
php制作动态随机验证码
2015/02/12 PHP
搭建Vim为自定义的PHP开发工具的一些技巧
2015/12/11 PHP
PHP explode()函数用法讲解
2019/02/15 PHP
javascript multibox 全选
2009/03/22 Javascript
jQuery实现点击标题输入详细信息
2013/04/16 Javascript
javascript一元操作符(递增、递减)使用示例
2013/08/07 Javascript
JS短路原理的应用示例 精简代码的途径
2013/12/13 Javascript
D3.js 从P元素的创建开始(显示可加载数据)
2014/10/30 Javascript
Javascript中的匿名函数与封装介绍
2015/03/15 Javascript
JQuery实现带排序功能的权限选择实例
2015/05/18 Javascript
jQuery实现输入框下拉列表树插件特效代码分享
2015/08/27 Javascript
jQuery中常用的遍历函数用法实例总结
2015/09/01 Javascript
基于jQuery实现Ajax验证用户名是否存在实例
2016/03/30 Javascript
浅谈angularjs module返回对象的坑(推荐)
2016/10/21 Javascript
JavaScript 深层克隆对象详解及实例
2016/11/03 Javascript
JavaScript实现弹窗效果代码分析
2017/03/09 Javascript
JS实现的全排列组合算法示例
2017/10/09 Javascript
node.js文件操作系统实例详解
2019/11/05 Javascript
[15:58]DOTA2国际邀请赛采访专栏:Tongfu.Sansheng&KingJ,DK.rOtk
2013/08/08 DOTA
python发送邮件的实例代码(支持html、图片、附件)
2013/03/04 Python
Python实现按照指定要求逆序输出一个数字的方法
2018/04/19 Python
python3+PyQt5实现柱状图
2018/04/24 Python
对python的bytes类型数据split分割切片方法
2018/12/04 Python
详解Numpy中的数组拼接、合并操作(concatenate, append, stack, hstack, vstack, r_, c_等)
2019/05/27 Python
Python3的socket使用方法详解
2020/02/18 Python
利用Python如何实时检测自身内存占用
2020/05/09 Python
微信小程序实现可实时改变转速的css3旋转动画实例代码
2018/09/11 HTML / CSS
HTML5 video进入全屏和退出全屏的实现方法
2020/07/28 HTML / CSS
经典演讲稿汇总
2014/05/19 职场文书
大学生社会实践活动总结
2014/07/03 职场文书
读后感作文评语
2014/12/25 职场文书
2016年主题党日活动总结
2016/04/05 职场文书
职业生涯规划书之大学四年
2019/08/07 职场文书