EXIFに撮影日時の書き込み

2022/10/28

Python3.8.2, PIL8.0.1

piexifモジュールを利用

ファイル名にある日付をEXIF情報に書き込みするスクリプト

import os
from PIL import Image
import PIL.ExifTags as ExifTags
from datetime import datetime
import piexif

input_fp = r'C:\path\2022-10-25_08-45-19.jpg'
output_fp = r'C:\path\test.jpg'

fn = os.path.splitext(os.path.basename(input_fp))[0]
dt = datetime.strptime(fn, '%Y-%m-%d_%H-%M-%S')
str_date = dt.strftime("%Y:%m:%d %H:%M:%S")

exif_dict = piexif.load(input_fp)
exif_dict['Exif'] = { piexif.ExifIFD.DateTimeOriginal: str_date }

exif_bytes = piexif.dump(exif_dict)
im = Image.open(input_fp)
im.save(output_fp, 'jpeg', exif=exif_bytes)