做了一个图片批量压缩小工具: tiny_gradio

💡 原文中文,约1300字,阅读约需4分钟。
📝

内容提要

这篇文章介绍了作者开发的一个图片压缩工具,使用了tinyjpg的API进行压缩。作者选择了Python作为开发语言,并使用了Gradio作为GUI库。文章还提到了项目开发中的一些难点和注意事项。

🔎

延伸解读

工具定位与适用场景

该工具主要面向需要批量压缩图片的博客作者或内容创作者。作者因手动上传图片到 tinyjpg 效率低,开发了此工具。它适合每月压缩需求在 500 次以内的个人用户,因为 tinyjpg 免费 API 每月提供 500 次调用。工具支持批量上传和 webp 转换,能提升处理效率。

技术选型与依赖管理

作者选择 Python 作为开发语言,因其熟悉且 tinyjpg 提供 Python 库。GUI 采用 Gradio,因其相对美观。但需注意,tinify 依赖 requests 和 urllib3,在 Mac 上若 urllib3 为 v2 版本可能出错,需使用 requirements_mac.txt 安装依赖。不同系统需选择对应的依赖文件。

使用限制与操作要点

Gradio 的文件多选不支持跨目录选择,因此批量上传时需将所有图片放在同一文件夹下,并点击 Upload Multi Image 按钮。此外,第一版界面未展示压缩结果,第二版增加了输出框。使用时需注意 inputs 组件数量与函数参数数量一致。

❓

Q&A

tiny_gradio工具的主要功能是什么?

tiny_gradio工具主要用于批量压缩图片,使用了tinyjpg的API进行压缩。

为什么选择Python和Gradio作为开发语言和库?

作者选择Python是因为熟悉该语言,而Gradio则提供了美观的用户界面,便于操作。

在开发过程中遇到了哪些难点?

开发中的难点包括Gradio的使用和界面设计,尤其是如何展示压缩结果。

如何获取tiny_gradio的源代码?

可以通过在AI技能巫公众号回复“图片紧缩”来获取源代码。

使用tiny_gradio时需要注意哪些事项?

需要注意不同系统选择不同的requirements.txt,以及批量上传图片必须放在同一文件夹下。

tinyjpg的API有什么限制?

tinyjpg的API每个月提供500次免费使用次数。

🏷️

标签

➡️

继续阅读