Python实现批量压缩图片


Posted in Python onJanuary 25, 2018

本文为大家分享了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实现批量压缩图片

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用Python下载Bing图片(代码)
Nov 07 Python
Python的print用法示例
Feb 11 Python
Python微信企业号开发之回调模式接收微信端客户端发送消息及被动返回消息示例
Aug 21 Python
Python实现变量数值交换及判断数组是否含有某个元素的方法
Sep 18 Python
python绘制条形图方法代码详解
Dec 19 Python
pyqt5的QWebEngineView 使用模板的方法
Aug 18 Python
使用50行Python代码从零开始实现一个AI平衡小游戏
Nov 21 Python
浅谈Python批处理文件夹中的txt文件
Mar 11 Python
Python图像阈值化处理及算法比对实例解析
Jun 19 Python
使用python画出逻辑斯蒂映射(logistic map)中的分叉图案例
Dec 11 Python
python多线程爬取西刺代理的示例代码
Jan 30 Python
python基础之模块的导入
Oct 24 Python
python生成圆形图片的方法
Mar 25 #Python
scrapy spider的几种爬取方式实例代码
Jan 25 #Python
scrapy爬虫完整实例
Jan 25 #Python
python实现画圆功能
Jan 25 #Python
Python中常用信号signal类型实例
Jan 25 #Python
简单实现python画圆功能
Jan 25 #Python
Python中sort和sorted函数代码解析
Jan 25 #Python
You might like
php 模拟get_headers函数的代码示例
2013/04/27 PHP
ajax调用返回php接口返回json数据的方法(必看篇)
2017/05/05 PHP
jQuery 第二课 操作包装集元素代码
2010/03/14 Javascript
两种简单实现菜单高亮显示的JS类代码
2010/06/27 Javascript
网页整体变灰白色(兼容各浏览器)实例
2013/04/21 Javascript
javascript查找字符串中出现最多的字符和次数的小例子
2013/10/29 Javascript
javascript打印html内容功能的方法示例
2013/11/28 Javascript
浅析jQuery(function(){})与(function(){})(jQuery)之间的区别
2014/01/09 Javascript
如何通过js实现图片预览功能【附实例代码】
2016/03/30 Javascript
学习 NodeJS 第八天:Socket 通讯实例
2016/12/21 NodeJs
微信禁止下拉查看URL的处理方法
2017/09/28 Javascript
Angular Material Icon使用详解
2018/11/07 Javascript
Vue+Express实现登录注销功能的实例代码
2019/05/05 Javascript
微信小程序template模板与component组件的区别和使用详解
2019/05/22 Javascript
JS函数参数的传递与同名参数实例分析
2020/03/16 Javascript
vue接通后端api以及部署到服务器操作
2020/08/13 Javascript
详解JavaScript数据类型和判断方法
2020/09/04 Javascript
一篇文章带你从零快速上手Rollup
2020/09/07 Javascript
[01:14:31]Secret vs VG 2018国际邀请赛淘汰赛BO3 第一场 8.23
2018/08/24 DOTA
[51:17]Mineski vs Secret 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.22
2019/09/05 DOTA
python实现计算资源图标crc值的方法
2014/10/05 Python
python 3.6.4 安装配置方法图文教程
2018/09/18 Python
在pycharm中实现删除bookmark
2020/02/14 Python
python右对齐的实例方法
2020/07/05 Python
管理心得体会
2013/12/28 职场文书
手机银行营销方案
2014/03/14 职场文书
学校师德承诺书
2014/05/23 职场文书
公司领导班子对照材料
2014/08/18 职场文书
招标授权委托书样本
2014/09/23 职场文书
2014城乡环境综合治理工作总结
2014/12/19 职场文书
我们的节日中秋节活动总结
2015/03/23 职场文书
人事聘任通知
2015/04/21 职场文书
在职证明书模板
2015/06/15 职场文书
节水宣传标语口号
2015/12/26 职场文书
课文《燕子》教学反思
2016/02/17 职场文书
基于tensorflow权重文件的解读
2021/05/26 Python