有个图片库,里面好多文件夹,每个文件夹底下有很多图片。
要求:把图片缩小,放在新的目录下。目录的子文件夹和原先一致。
脚本不足:1、没有判断文件是否为所需要格式,如果文件夹里有不是图片的文件就会报错。2、使用的是PIL缩略图的函数,所以方法普适性欠缺。
不过好在脚本简单。
源目录
新目录
脚本:
import os
from PIL import Image
path=(r'.../财务证明')
file=os.walk(path)
path1=(r'.../财务证明1')
for dirpath,dirnames,filenames in file:
a,b=os.path.split(dirpath)
for filename in filenames:
im=Image.open(str(a) '/' str(b) '/' filename)
x,y=im.size
im.thumbnail((int(x*0.5), int(y*0.5)))
if os.path.isdir(path1 '/' str(b))==False:
os.makedirs(path1 '/' str(b))
im.save(path1 '/' str(b) '/' str(filename),'JPEG')
else:
im.save(path1 '/' str(b) '/' str(filename),'JPEG')