import os
from PIL import Image
import zipfile
# フォルダ内の画像ファイルを取得する
folder_path = os.path.dirname(__file__)
image_files = [os.path.join(folder_path, f) for f in os.listdir(folder_path) if f.endswith((".jpg", ".webp"))]
# 画像ファイルを変換して保存する
converted_files = []
for image_file in image_files:
image = Image.open(image_file)
png_file = os.path.splitext(image_file)[0] + ".png"
image.save(png_file, "png")
image.close()
converted_files.append(png_file)
# 変換した画像ファイルをZIPファイルに圧縮する
zip_file = zipfile.ZipFile(os.path.join(folder_path, "converted_images.zip"), "w")
for png_file in converted_files:
zip_file.write(os.path.join(folder_path, png_file), png_file)
zip_file.close()
# 元の画像ファイルと変換した画像ファイルを削除する
for image_file in image_files + converted_files:
os.remove(image_file)
【Python】jpg・webpをpngに変換してzipにまとめる
コメントを残す