按照图片尺寸自动分类 手机分辨率 电脑分辨率 python脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# 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:\Download\pc', photo)
shutil.copyfile(photo_abspath, new_paths)
print('pc')
else:
# 根据图片尺寸Copy文件到新目录 Mobil
new_paths = os.path.join(r'D:\Download\mobil', photo)
shutil.copyfile(photo_abspath, new_paths)
print('mobil')
img.close()
# 转移完毕后 删除原文件
os.remove(photo_abspath)
print('分类成功!')

# 图片目录
files_path = r'D:\Download\meinv'

if __name__ == '__main__':
photo_classify(files_path)