python 压缩图片文件大小
时间: 2024-05-10 13:13:00 浏览: 11
在 Python 中,可以使用 Pillow 库(Python Imaging Library 的一个分支)来处理图像。要压缩图像文件大小,可以使用 Pillow 库中的 save() 方法,并通过指定 quality 参数来实现。
以下是一个简单的例子,演示如何使用 Pillow 库来压缩 JPEG 格式的图像文件:
```python
from PIL import Image
# 打开原始图像文件
with Image.open('original_image.jpg') as img:
# 将图像文件压缩为指定质量的 JPEG 格式
img.save('compressed_image.jpg', 'JPEG', quality=50)
```
在上述代码中,'original_image.jpg' 是要压缩的原始图像文件,'compressed_image.jpg' 是压缩后的图像文件名,quality=50 指定了压缩质量,值越小则压缩率越高,但图像质量会降低。
相关问题
python 压缩图片大小
你可以使用PIL库来压缩图片大小。以下是一个简单的例子:
```python
from PIL import Image
# 打开图片并保存为JPEG格式
im = Image.open("example.jpg")
im.save("example.jpg", "JPEG")
# 打开图片并压缩大小
im = Image.open("example.jpg")
im.thumbnail((1000, 1000)) # 设置最大宽度和高度为1000像素
im.save("example_compressed.jpg", "JPEG")
```
在上面的代码中,首先打开图片并将其保存为JPEG格式,这将删除原始图片中的所有元数据。然后,重新打开图片并使用`thumbnail()`方法压缩图片大小,其参数为一个元组,其中包含最大宽度和高度的像素值。最后,将压缩后的图片保存为新的JPEG文件。
请注意,压缩图片会降低其质量,因此需要根据需要平衡压缩率和图像质量。
python批量压缩图片大小
你可以使用PIL库来批量压缩图片大小。以下是一个示例代码:
```python
from PIL import Image
import os
# 设置压缩后的图片大小
size = (512, 512)
# 设置原始图片路径
path = "original_images/"
# 设置压缩后图片保存路径
new_path = "compressed_images/"
# 遍历原始图片路径下的所有图片
for file_name in os.listdir(path):
# 如果不是图片文件,则跳过
if not file_name.endswith(".jpg") and not file_name.endswith(".jpeg") and not file_name.endswith(".png"):
continue
# 打开图片文件
image = Image.open(os.path.join(path, file_name))
# 压缩图片大小
image.thumbnail(size)
# 保存压缩后的图片
image.save(os.path.join(new_path, file_name))
```
在这个示例中,我们首先定义了压缩后的图片大小和原始图片路径和压缩后图片保存路径。然后,我们遍历原始图片路径下的所有图片,打开每个图片文件并压缩图片大小。最后,我们将压缩后的图片保存到压缩后图片保存路径中。
注意,如果原始图片不是正方形,那么压缩后的图片可能会出现变形。如果你想保持图片的比例,可以使用`resize()`函数而不是`thumbnail()`函数。