python获取照片的拍摄日期并重命名

python获取照片的拍摄日期并重命名。不支持重复处理的中断。

重命名为:拍摄日期__原文件名

import os
import exifread

def getExif(filename):
    FIELD = 'EXIF DateTimeOriginal'
    fd = open(filename, 'rb')
    tags = exifread.process_file(fd)
    fd.close()
    if FIELD in tags:
        new_name = str(tags[FIELD]).replace(':', '').replace(' ', '_') + os.path.splitext(filename)[1]
        tot = 1
        while os.path.exists(new_name):
            new_name = str(tags[FIELD]).replace(':', '').replace(' ', '_') + '_' + str(tot) + os.path.splitext(filename)[1]
            tot += 1

        new_name2 = new_name.split(".")[0] + '__' +filename
        print(new_name2)    
        os.rename(filename, new_name2)
    else:
        print('No {} found'.format(FIELD))

for filename in os.listdir('.'):
    if os.path.isfile(filename):
        getExif(filename)

python获取照片的拍摄日期并重命名_第1张图片

有拍摄日期的文件数,年轻时多么爱拍照。。。

python获取照片的拍摄日期并重命名_第2张图片

你可能感兴趣的:(python获取照片的拍摄日期并重命名)