给 App 瘦身,很重要的一个步骤就是图片的压缩。以前用的是 TinyPNG 在线压缩,压缩比例和质量都很高,唯一不足的是,它只能单张上传下载,很麻烦。接着又尝试了很多 Mac 下的压缩图片 App,例如 ImageOptim ,试了几张图以后,就卸载了。界面丑、速度慢、质量低导致我不想打开第二次…
于是,动手自己写脚本了… 本来打算模拟请求的,结果发现 TinyPNG 有开发 API,简直良心。脚本是 Python 的,不过我只会 Python 的基本语法,这里特别鸣谢 numbbbbb 提供的思路。
环境信息:
Python 2.7.10
正文
一、环境配置
别被这四个字吓到了,只需要一行命令。
首先,电脑需要有 Python 环境,正好 Mac 自带 Python 环境。然后,安装 TinyPNG 的库:
sudo pip install --upgrade tinify
ok,环境配置到此结束。
二、申请 AppKey
到 TinyPNG 网站 上去申请 AppKey,唯一不是很爽的就是一个月只能压缩 500 张(但这不是没限制你可以注册多少个吗…)。填写名字和邮箱,验证以后就可以获得 AppKey 了,很方便。
三、下载并运行脚本
https://github.com/saitjr/STTinyPNG-Python.git
打开 STTinyPNG-Python.py
,填写你的 AppKey、图片文件夹路径、图片输出文件夹路径(输出文件夹空的就行,如果图片里的文件夹目录不存在,会自动创建)。
tinify.key = "your AppKey" # AppKey fromFilePath = "/Users/tangjr/Desktop/test1" # 源路径 toFilePath = "/Users/tangjr/Desktop/test2" # 输出路径
ok,运行脚本。打开终端:
python /Users/tangjr/Documents/STTinyPNG-Python/STTinyPNG-Python.py
Done !
四、简单说一下思路
使用 Python 的 os
库,遍历源文件夹,找到 .png
或 .jpg
文件,则进行压缩( TinyPNG 只支持这两种图片类型)。
恩,就这么简单,没了…