python利用Guetzli批量压缩图片

yipeiwu_com6年前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之编写类之一创建实例

说明:关于类的这部分,我参考了《Learning Python》一书的讲解。 创建类 创建类的方法比较简单,如下: 复制代码 代码如下: class Person:  注意,...

python实现大战外星人小游戏实例代码

主程序 import pygame from pygame.sprite import Group from settings import Settings from game_...

Python Flask前后端Ajax交互的方法示例

Python Flask前后端Ajax交互的方法示例

之前总结过flask里的基础知识,现在来总结下flask里的前后端数据交互的知识,这里用的是Ajax 一、 post方法 1、post方法的位置:在前端HTML里,绑定在一个按钮的点击...

python 循环数据赋值实例

python在数值赋值的时候可以采用数值内循环赋值,很方便 如下 a = [x for x in range(10)] 这样 a = [0,1,2,3,4,5,6,7,8,9]...

python删除某个字符

python删除某个字符

使用python去除文中的某个字符是非常麻烦的一件事,不同的环境可以用到多种方法,例如正则表达式,del语法,现在发布的是一个比较简单易行的方法,就是遇到该字符便跳过去,不对其进行操作,...