小前言(请跳过):
本人Python小白,因为最近想整理下近10几年的老照片,然后就有了用脚本批处理照片的想法。
初始需求其实很简单,就是筛选自己想要的照片到指定文件夹,然后按照exif信息重命名照片为拍摄时间_拍摄设备.jpg,比如20180101_122334_E-M10.jpg代表的是2018年01月01日12点23分34秒用E-M10拍摄的照片。
这个算不上教程,不会全面地介绍某个库,只是我在折腾过程中的小摘要小想法,
如有错误请指出,如有疑问当然也欢迎留言相互讨论。
Glob库
这里从Glob库出发,遍历指定文件夹中jpg文件。
以py文件同目录下sample文件夹为例:
sample下有子文件夹sampleBackup, 3个jpg文件和1个txt文件;
sampleBackup含有2个jpg文件,如下图
sample文件夹结构
glob.glob(pathname, *, recursive=False)
最简单的glob使用方法,遍历.\sample\路径下的所有jpg文件
glob默认下是不会遍历子文件夹,recursive=False可省略
import glob
for filepath in glob.glob(r'.\sample\*.jpg'):
print(filepath)
运行结果:
.\sample\P1020523.jpg
.\sample\P7200248-2.jpg
.\sample\P7200258-2.jpg
glob.glob(pathname, *, recursive=True)
如果需要一并查找n级目录下文件,则需要扩展路径,
这里以二级目录sampleBackup为例:
import glob
for filepath in glob.glob(r'.\sample\**\*.jpg', recursive = True):
print(filepat