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批量压缩图片相关推荐

  1. python 百度ocr安装_Python利用百度文字识别(OCR)服务实现图片文字提取,准确率超高...

    最近和朋友聊天,聊到一个充满使命感但又略显心酸的话题--下班回家在网上给小朋友抄题...那么问题来了,除了大家所知的QQ文字识别功能之外,还有哪些方式可以做到文字识别呢. 作为一名热心的Python小 ...

  2. python 批量下载网页图片_Python实现多线程批量下载图片

    <派森>(Python)3.13 win32 英文安装版 类型:编程工具大小:21M语言:英文 评分:8.7 标签: 立即下载 爬取图片可真的是一个可遇不可求的机会. 有需求就会动力. 目 ...

  3. python自动换壁纸_Python爬取必应每日图片并实现Windows壁纸自动切换

    不知道大家是否对每日一成不变的壁纸感到厌倦呢?反正对于我个人来说,如果每天打开电脑映入眼帘的都是不同的画面,那么科研热情都会被充分激发,从而提高自己的劳动生产力. 原来使用的是Deepin系统,自己写 ...

  4. python pdf处理 图片_python PDF文件合并、图片处理

    一.合并多个PDF文件 实例: #导入模块import codecs import os import PyPDF2 as PyPDF2 #建立一个装pdf文件的数组 files = list()#遍 ...

  5. python修改电脑名称_python 脚本之批量更改主机名

    今天接到上面工作任务,让更改多台主机的主机名称.使用python paramiko Module,随手写了一个批量修改主机名的脚本. #!/usr/bin/env python #-*- coding ...

  6. 用python画apc图_Python开发GUI实战:图片转换素描画工具!

    奋斗没有终点好好学习72变,因为将来 没有人能替你阻挡81难 . 生如蝼蚁,当有鸿鹄之志: 命如纸薄,应有不屈之心 . ! 今天被这句话触动了,所以开篇分享给大家.鸡汤有毒,但有时大家却靠它激励自己继 ...

  7. python识别图片中方框_Python+Opencv实现鼠标在图片上取色

    1.实现效果: 左边是Python代码的运行界面.可以看到在输出行有[249 221 187]三个数字,因为我在右侧的图片上点击了某个区域,因此就输出了所点击区域的RGB颜色.RGB颜色就是三原色,三 ...

  8. mysql 存储过程 批量导入数据_sql 利用存储过程批量导入数据

    什么是 存储过程(stored procedure)是一组为了完成特定功能的sql语句集,是利用sql server所提供的transact-sql语言所编写的程序.经编译后存储在中.存储过程是数据库 ...

  9. java 获取百度云盘图片_java 利用百度云识别图片文字

    一.百度云使用步骤 1.进入https://console.bce.baidu.com/#/index/overview 登录百度云账号.百度所有账号都是通用的,可以直接利用百度的其他账号(百度网盘. ...

最新文章

  1. apache-shiro杂记(三) 用了apache-shiro后,HttpSession.getServletContext() API无法正常工作了...
  2. 《转载》Python并发编程之线程池/进程池--concurrent.futures模块
  3. Java继承Thread类创建多线程
  4. SAP Commerce的extensioninfo.xml
  5. PHPCMS v9 安全防范教程!
  6. windows 2502 2503 错误解决
  7. 闲鱼账号被封怎么办?解封看这里!
  8. linux-facl权限入门-设置与查看facl权限
  9. Runtime.getRuntime().exec()如何调用7z解压文件
  10. Win10重装系统后进行初始化
  11. max3232ese_【MAX3232ESE+ PDF数据手册】_中文资料_引脚图及功能_(美信 Maxim Integrated)-采芯网...
  12. cp: cannot create regular file ‘/root/queues.conf’: No space left on devic
  13. 亚马逊不再是以前了--亚马逊防关联
  14. 微信开发者工具网页h5本地开发,解决微信公众号绑定域名,本地无法调用微信api问题
  15. Python+selenium实现医院自动挂号
  16. NVIDIA Jetson TK1学习与开发(二):入门指导
  17. 2018年支付宝领取大红包破解教程
  18. 【我的Android进阶之旅】 高效的设计稿标注及测量工具Markman介绍
  19. Opencv实现击中击不中
  20. FreeRTOS学习(一)

热门文章

  1. orange实现逻辑回归_逻辑回归模型
  2. 【爬虫剑谱】一卷3章 软件篇-Anaconda的安装及配置
  3. 字符编码过滤器中对特殊的路径进行特殊处理
  4. nginx ---- nginx.conf核心配置文件
  5. android.mk 冒号,android学习-ndk-build(androidstudio编译cocos2d-x库的cpp为so文件的解释)
  6. jasperreport linux 中文不能显示的解决方法
  7. springBoot项目启动去掉多余的启动日志
  8. SpringBoot使用netty
  9. Thread.sleep()和TimeUnit.SECONDS.sleep()的区别与联系
  10. RabbitMQ获取队列的消息数目