python 获取 exif 并 批量重命名图片?

(初学皮毛)下面的代码出现了进程占用的情况,有哪位大哥帮忙看看:

import exifread
import os

def group_imgs(path):

    file = os.listdir(path)

    src = ''
    image = ''
    tags = ''
    iname = ''
    
    for i in file:

        src = path + '/' + i
        image = open(src, 'rb')
        tags = exifread.process_file(image)

        if 'EXIF DateTimeOriginal' in tags:

            iname = str(tags['EXIF DateTimeOriginal']).replace(' ', '-')
            os.rename(src, iname + i[-4:])
            image.close()

group_imgs('G:/itest')
阅读 3.5k
1 个回答

os.rename() 前关闭打开的文件,像这样

with open(src, 'rb') as image:
    tags = exifread.process_file(image)

if ....:
    ....
    os.rename(...)
    
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题