1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
from PIL import Image
import shutil
import os
from pillow_heif import register_heif_opener
register_heif_opener()
for file in os.listdir():
if not (file.endswith("JPG") or file.endswith("HEIC")):
continue
im = Image.open(file)
date = im.getexif().get(306)
if date is None:
print(f"no exif for {file}")
continue
dir = date[:7].replace(":", "-")
os.makedirs(dir, exist_ok=True)
shutil.move(file, f"{dir}/{file}")