python利用Guetzli批量压缩图片

yipeiwu_com7年前Python基础

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 import与from import使用及区别介绍

下面介绍下Python import与from import使用,具体内容如下所示: Python程序可以调用一组基本的函数(即内建函数),比如print()、input()和len()...

跟老齐学Python之有点简约的元组

关于元组,上一讲中涉及到了这个名词。本讲完整地讲述它。 先看一个例子: >>>#变量引用str >>> s = "abc" >>>...

Python 中使用 PyMySQL模块操作数据库的方法

之前用的Python2,连接MySQL用的是MySQLdb。现在换成python3.x了,由于 MySQLdb 模块还不支持 Python3.x,所以 Python3.x 如果想连接My...

Python绘制七段数码管实例代码

Python绘制七段数码管实例代码

七段数码管(seven-segmentindicator)由7段数码管拼接而成,每段有亮或不亮两种情况,改进型的七段数码管还包括一个小数点位置 绘制模式: input:输入当前日期的数字...

python获取交互式ssh shell的方法

更新,最近在学unix环境编程,了解一下进程的创建过程,用最原始的方式实现了一个ssh命令的执行。 #coding=utf8 ''' 用python实现了一个简单的shell,了...