import shutil
import os
from PIL import Image

# 根路径
root_path = "C:/Users/admin/Desktop/test/"
# 原图路径
sources = "sources/"
# 分拣长图路径
height_path = "chang/"
# 分拣宽图路径
width_path = "kuan/"
# 分拣方图路径
center_path = "fang/"
# 创建 长、宽、方图文件夹
if not os.path.exists(root_path + height_path):
    os.mkdir(root_path + height_path)
    os.mkdir(root_path + width_path)
    os.mkdir(root_path + center_path)
# 读取原图列表
files = os.listdir(root_path + sources)
# 计数
i = 1
# 循环处理
for v in files:
    print(i, "---------------------------------------")
    old_path = root_path + sources
    # 读取图片获取长宽
    img = Image.open(old_path + v)
    width, height = img.size
    # 释放资源,不然会报错,文件被占用
    img.close()
    if width == height:  # 方图
        new_path = root_path + center_path
    elif width > height:  # 宽图
        new_path = root_path + width_path
    else:  # 长图
        new_path = root_path + height_path
    # 移动文件
    shutil.move(old_path + v, new_path)
    i += 1