如何使用python批量压缩图片_python利用Guetzli批量压缩图片
Google 又开源了,这次开源了一款图像算法工具 Guetzli。Guetzli,在瑞士德语中是“cookie(曲奇)”的意思,是一个针对数码图像和网页图像的 JPEG 编码器,能够通过产生更小的 JPEG 文件来达到更快的在线体验,并且同时保持与当前浏览器,图像处理应用和 JPEG 标准的兼容性。Google 称 Guetzli 创建高质量的 JPEG 图像文件的大小比当前的压缩方法要再小 35%。
今天玩了下谷歌的开源图片压缩工具Guetzli,发现单张图片压缩效果还是不错的,就写了个简单的python脚本,批量压缩图片
前提条件
1.安装好Guetzli,可以使用命令行工具
2.python环境
简单的代码
# -*- coding: utf-8 -*-
import os
dir_name = "你选择的图片文件夹"
def get_file_name(file_dir):
for root, dirs, files in os.walk(file_dir):
print(root)
# print(dirs)
# print(files)
return files
files = get_file_name(dir_name)
print(files)
os.chdir(dir_name)
for file in files:
cmd = "guetzli --quality 85 --verbose " + file + " " + file
os.system(cmd)
效果
压缩之前
压缩后
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
如何使用python批量压缩图片_python利用Guetzli批量压缩图片相关推荐
- python 百度ocr安装_Python利用百度文字识别(OCR)服务实现图片文字提取,准确率超高...
最近和朋友聊天,聊到一个充满使命感但又略显心酸的话题--下班回家在网上给小朋友抄题...那么问题来了,除了大家所知的QQ文字识别功能之外,还有哪些方式可以做到文字识别呢. 作为一名热心的Python小 ...
- python 批量下载网页图片_Python实现多线程批量下载图片
<派森>(Python)3.13 win32 英文安装版 类型:编程工具大小:21M语言:英文 评分:8.7 标签: 立即下载 爬取图片可真的是一个可遇不可求的机会. 有需求就会动力. 目 ...
- python自动换壁纸_Python爬取必应每日图片并实现Windows壁纸自动切换
不知道大家是否对每日一成不变的壁纸感到厌倦呢?反正对于我个人来说,如果每天打开电脑映入眼帘的都是不同的画面,那么科研热情都会被充分激发,从而提高自己的劳动生产力. 原来使用的是Deepin系统,自己写 ...
- python pdf处理 图片_python PDF文件合并、图片处理
一.合并多个PDF文件 实例: #导入模块import codecs import os import PyPDF2 as PyPDF2 #建立一个装pdf文件的数组 files = list()#遍 ...
- python修改电脑名称_python 脚本之批量更改主机名
今天接到上面工作任务,让更改多台主机的主机名称.使用python paramiko Module,随手写了一个批量修改主机名的脚本. #!/usr/bin/env python #-*- coding ...
- 用python画apc图_Python开发GUI实战:图片转换素描画工具!
奋斗没有终点好好学习72变,因为将来 没有人能替你阻挡81难 . 生如蝼蚁,当有鸿鹄之志: 命如纸薄,应有不屈之心 . ! 今天被这句话触动了,所以开篇分享给大家.鸡汤有毒,但有时大家却靠它激励自己继 ...
- python识别图片中方框_Python+Opencv实现鼠标在图片上取色
1.实现效果: 左边是Python代码的运行界面.可以看到在输出行有[249 221 187]三个数字,因为我在右侧的图片上点击了某个区域,因此就输出了所点击区域的RGB颜色.RGB颜色就是三原色,三 ...
- mysql 存储过程 批量导入数据_sql 利用存储过程批量导入数据
什么是 存储过程(stored procedure)是一组为了完成特定功能的sql语句集,是利用sql server所提供的transact-sql语言所编写的程序.经编译后存储在中.存储过程是数据库 ...
- java 获取百度云盘图片_java 利用百度云识别图片文字
一.百度云使用步骤 1.进入https://console.bce.baidu.com/#/index/overview 登录百度云账号.百度所有账号都是通用的,可以直接利用百度的其他账号(百度网盘. ...
最新文章
- apache-shiro杂记(三) 用了apache-shiro后,HttpSession.getServletContext() API无法正常工作了...
- 《转载》Python并发编程之线程池/进程池--concurrent.futures模块
- Java继承Thread类创建多线程
- SAP Commerce的extensioninfo.xml
- PHPCMS v9 安全防范教程!
- windows 2502 2503 错误解决
- 闲鱼账号被封怎么办?解封看这里!
- linux-facl权限入门-设置与查看facl权限
- Runtime.getRuntime().exec()如何调用7z解压文件
- Win10重装系统后进行初始化
- max3232ese_【MAX3232ESE+ PDF数据手册】_中文资料_引脚图及功能_(美信 Maxim Integrated)-采芯网...
- cp: cannot create regular file ‘/root/queues.conf’: No space left on devic
- 亚马逊不再是以前了--亚马逊防关联
- 微信开发者工具网页h5本地开发,解决微信公众号绑定域名,本地无法调用微信api问题
- Python+selenium实现医院自动挂号
- NVIDIA Jetson TK1学习与开发(二):入门指导
- 2018年支付宝领取大红包破解教程
- 【我的Android进阶之旅】 高效的设计稿标注及测量工具Markman介绍
- Opencv实现击中击不中
- FreeRTOS学习(一)
热门文章
- orange实现逻辑回归_逻辑回归模型
- 【爬虫剑谱】一卷3章 软件篇-Anaconda的安装及配置
- 字符编码过滤器中对特殊的路径进行特殊处理
- nginx ---- nginx.conf核心配置文件
- android.mk 冒号,android学习-ndk-build(androidstudio编译cocos2d-x库的cpp为so文件的解释)
- jasperreport linux 中文不能显示的解决方法
- springBoot项目启动去掉多余的启动日志
- SpringBoot使用netty
- Thread.sleep()和TimeUnit.SECONDS.sleep()的区别与联系
- RabbitMQ获取队列的消息数目