关于 Squoosh

Squoosh 是谷歌发布的一款开源的图片在线压缩服务(伪),虽然需要用浏览器打开,但其实是一个整合了许多命令行工具的前端界面,调用的是本地的计算资源,所以只要打开过一次 Squoosh ,之后都会秒开,并且离线使用。

优点

可以实现图片格式转换、图片压缩等操作,提供丰富的图片格式和压缩等级,可以实现几乎无损(肉眼难以分辨)的压缩,并且压缩效果非常好,比 TinyPNG 的压缩比例大得多,这也是我放弃 TinyPNG 选择 Squoosh 的原因。

缺点

无法批量处理图片,也没有提供 API,相比之下,TinyPNG 的 API 就显得方便很多。

不过,就像前面说的,Squoosh 实际上是整合了本地的命令行工具,调用的本地资源,所以,直接在命令行中使用 MozJPEG 之类的压缩方法可能更加方便。

可惜我不会。但是,我会曲线救国。

Python 调用 Selenium

思路

能力不够,资源来凑。

既然 Squoosh 是用浏览器操作的前端界面,那我就直接用代码去模拟浏览器操作。

这是 Squoosh 的主界面,Select an Image 其实是一个输入框,那我们直接用 Selenium 把本地图片的路径输入进去就行了:

输入图片路径之后就会默认压缩成 75% 质量的 MozJPEG,我觉得无论是压缩比和质量都很不错,所以就没有改,等待页面加载完成之后就直接下载: