将制作完成的产品拍照发客户,是博主的工作之一,原来是用的数码相机,随着手机照片质量的提升,现在用手机拍照也能满足需求。目前在用的手机是xsmax,默认设置下一张照片经常会超过4M,记得购买的第一个u盘的容量也就32M还是64M。遇到客户订购规格较多的时候,一文件夹的图片压缩下来仍旧有200~300M,就想着是不是可以批量的把图片尺寸压缩一下。
Pillow库
利用这个简单实用的Python图像处理库,就可以实现博主的需求,安装可以使用如下命令:
pip install Pillow
因为部分库存在兼容性的问题,如果最新版本导入失败的情况,可以考虑安装稍早一些的版本,不过博主安装的时候是直接安装的,并没有挑选版本,在python2.7.18中该库也正常可以使用。好奇想看一下这个库的版本,于是又学到了一个新命令:
pip2 list | findstr Pillow
上术命令在window下有效,如果是linux系统,可以把“findstr”更换为“grep”。
程序正文
通过Pillow获取到图片的宽高尺寸,然后统一缩放为40%,最后保存,这种直接保存的方式会覆盖掉原文件,如果希望保留原始的文件,保存的时候最好重新命名一下文件,比如给文件加一个“thumb”后缀啥的。
import os
import glob
from PIL import Image
for thisImage in glob.glob('*.JPG'):
im = Image.open(thisImage)
im.thumbnail((im.size[0]*0.4,im.size[1]*0.4))
im.save(thisImage)