Python使用PIL库批量压缩图片的实现方法
本文介绍利用Python的PIL库实现图片批量压缩的具体代码。通过遍历指定目录下的JPG文件,利用resize方法调整尺寸并保存至新目录,自动创建目标文件夹。代码包含路径处理、文件重命名及压缩保存逻辑,适用于需要快速处理大量图片的场景。
本文分享了使用Python进行图片批量压缩的具体实现代码,供读者参考学习。
# -*- coding: utf-8 -*-
"""
__author__= 'Du'
__creation_time__= '2018/1/5 10:06'
"""
import os
from PIL import Image
import glob
DIR = 'C:/Users/Public/Pictures/Sample Pictures/'
class Compress_Picture(object):
def __init__(self):
# 图片格式,可以换成.bpm等
self.file = '.jpg'
# 图片压缩批处理
def compressImage(self):
for filename in glob.glob('%s%s%s' % (DIR, '*', self.file)):
# print(filename)
# 打开原图片压缩
sImg = Image.open(filename)
w, h = sImg.size
print(w, h)
dImg = sImg.resize((200, 200), Image.ANTIALIAS) # 设置压缩尺寸和选项,注意尺寸要用括号
# 如果不存在目的目录则创建一个
comdic = "%scompress/"%DIR
if not os.path.exists(comdic):
os.makedirs(comdic)
# 压缩图片路径名称
f1 = filename.split('/')
f1 = f1[-1].split('\\')
f2 = f1[-1].split('.')
f2 = '%s%s1%s'%(comdic, f2[0], self.file)
# print(f2)
dImg.save(f2) # save这个函数后面可以加压缩编码选项JPEG之类的
print("%s compressed succeeded"%f1[-1])
if __name__ == "__main__":
obj = Compress_Picture()
obj.compressImage()
处理效果如下图所示:

以上是关于Python批量压缩图片的全部内容,希望能为读者的学习带来帮助,同时也欢迎大家继续支持本站。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









