返回
用 Tinypng 批量压缩图片的利器
前端
2023-10-02 22:44:35
批量压缩图片的终极指南:使用Tinypng API
简介
图片是任何网站或应用程序的重要组成部分。然而,较大的图片会减慢页面加载速度,影响用户体验。Tinypng 是一款强大的图片压缩工具,可以帮助您优化图片大小,同时保持其质量。本指南将为您提供分步指南,说明如何使用 Tinypng API 批量压缩图片。
注册 Tinypng API
第一步是注册 Tinypng 账户并获取 API 密钥。访问 Tinypng 网站,点击“注册”按钮创建一个新账户。注册后,前往“API”选项卡获取您的 API 密钥。
编写 Python 脚本
要批量压缩图片,我们将使用 Python 脚本。创建一个名为 tinypng_batch.py
的新文件,并粘贴以下代码:
import requests
import os
# 定义 Tinypng API 密钥
api_key = "YOUR_API_KEY"
# 定义要压缩的图片目录
input_dir = "input_dir"
# 定义压缩后的图片目录
output_dir = "output_dir"
# 创建一个 Tinypng API 请求会话
session = requests.Session()
session.headers = {"Authorization": "Basic {}".format(api_key)}
# 遍历要压缩的图片目录
for filename in os.listdir(input_dir):
# 读取图片文件
with open(os.path.join(input_dir, filename), "rb") as f:
image_data = f.read()
# 使用 Tinypng API 压缩图片
response = session.post("https://api.tinypng.com/shrink", data=image_data)
# 将压缩后的图片保存到输出目录
with open(os.path.join(output_dir, filename), "wb") as f:
f.write(response.content)
print("图片压缩完成!")
运行脚本
- 将您的 API 密钥替换为
api_key
变量。 - 将要压缩的图片放入
input_dir
目录中。 - 创建一个名为
output_dir
的目录来存储压缩后的图片。 - 运行脚本
python tinypng_batch.py
。
示例用法
以下是一个示例用法,其中要压缩的图片位于 images
目录中,压缩后的图片将保存到 compressed_images
目录中:
import requests
import os
# 定义 Tinypng API 密钥
api_key = "YOUR_API_KEY"
# 定义要压缩的图片目录
input_dir = "images"
# 定义压缩后的图片目录
output_dir = "compressed_images"
# 创建一个 Tinypng API 请求会话
session = requests.Session()
session.headers = {"Authorization": "Basic {}".format(api_key)}
# 遍历要压缩的图片目录
for filename in os.listdir(input_dir):
# 读取图片文件
with open(os.path.join(input_dir, filename), "rb") as f:
image_data = f.read()
# 使用 Tinypng API 压缩图片
response = session.post("https://api.tinypng.com/shrink", data=image_data)
# 将压缩后的图片保存到输出目录
with open(os.path.join(output_dir, filename), "wb") as f:
f.write(response.content)
print("图片压缩完成!")
结论
使用 Tinypng API 批量压缩图片是一种快速且有效的方法,可以优化您的图片并提高网站或应用程序的加载速度。通过遵循本指南,您将能够轻松地压缩多个图片,从而改善用户体验并提升网站性能。
常见问题解答
1. Tinypng 每月免费压缩多少张图片?
500 张图片
2. Tinypng 支持哪些图片格式?
PNG、JPEG 和 GIF
3. Tinypng 压缩图片的最大尺寸是多少?
5MB
4. 我可以在没有 API 密钥的情况下使用 Tinypng API 吗?
不行,API 密钥是必需的。
5. 是否有其他批量压缩图片的方法?
有多种在线工具和桌面应用程序可以实现批量压缩图片,但 Tinypng 是最流行和可靠的选择之一。