# coding=utf-8
"""
功能:按图片的尺寸大小进行分类
区分 电脑分辨率图片 手机分辨率图片
"""
import os
import shutil
from PIL import Image
# 定义一个分类函数,函数括号中为需要分类的图片文件夹路径
def photo_classify(files_path):
# 读取文件夹中所有文件的名称
files_list = os.listdir(files_path)
# 循环文件夹中的所有文件
for photo in files_list:
# 获取图片的绝对路径
photo_abspath = os.path.join(files_path, photo)
# print(photo_abspath)
# 判断photo是不是文件夹,若是文件夹则跳过,若不是文件夹则继续执行
if os.path.isdir(photo_abspath):
continue
else:
# 读图片的尺寸
img = Image.open(photo_abspath)
# 取图片宽度
weight = img.size[0]
# 取图片高度
high = img.size[1]
# 对比图片宽高
if weight > high:
# 根据图片尺寸copy文件到新目录 PC
new_paths = os.path.join(r'D:Downloadpc', photo)
shutil.copyfile(photo_abspath, new_paths)
print('pc')
else:
# 根据图片尺寸copy文件到新目录 Mobil
new_paths = os.path.join(r'D:Downloadmobil', photo)
shutil.copyfile(photo_abspath, new_paths)
print('mobil')
img.close()
# 转移完毕后 删除原文件
os.remove(photo_abspath)
print('分类成功!')
# 图片目录
files_path = r'D:Downloadmeinv'
if __name__ == '__main__':
photo_classify(files_path)
原文地址:https://cloud.tencent.com/developer/article/2112089
评论