简单实现guetzli命令行工具进行批量jpg图片压缩

GuetzliGoogle开源的 JPEG压缩算法,看网上介绍说是能将图片在尽可能保证质量前提下压缩20%~30%,自己亲自尝试除了对大文件压缩时有点慢,其实还行。这里就简单讲下通过脚本来批量压缩jpg文件吧

下载guetzli命令行工具

进入 https://github.com/google/guetzli 查看文档

简单实现guetzli命令行工具进行批量jpg图片压缩_第1张图片

命令说明
guetzli [--quality Q] [--verbose] original.jpg output.jpg

命令参数 参数说明
--quality 指的是质量,可选范围是大于等于84,默认是95
--verbose 加次参数后 在执行压缩时会在控制台输出
original.jpg 输入的图片路径
output.jpg 输出的图片路径

进入 https://github.com/google/guetzli/releases 进行下载对应文件

简单实现guetzli命令行工具进行批量jpg图片压缩_第2张图片

使用python

目录下新建两个目录目录分别存放原始图片和当前图片

简单实现guetzli命令行工具进行批量jpg图片压缩_第3张图片

run.py

import os 
dir_name = "./imgs/" 
out_dir_name="./out/"
for root, dirs, files in os.walk(dir_name): 
    print("读取目录:",root)

#os.chdir(dir_name) 
for file in files:
    out_file=out_dir_name+ file 
    file=dir_name+ file
    print("正在处理:",file,"==>",out_file) 
    cmd = "guetzli_windows_x86-64.exe --quality 85 " + file+ " " +out_file 
    os.system(cmd) 

windows 处理文件文件

run.bat

echo off 
set DIR="imgs"
set OUT="out"
echo 遍历目录:%DIR%
echo 输出目录:%OUT%

for /f  %%f in ('dir /b/a-d/oN %DIR%') do ( 
echo 正在处理%%f 
guetzli_windows_x86-64.exe --quality 85 %DIR%/%%f %OUT%/%%f
)
pause
简单实现guetzli命令行工具进行批量jpg图片压缩_第4张图片

你可能感兴趣的:(简单实现guetzli命令行工具进行批量jpg图片压缩)