【Python】画像ファイルをリサイズ(+圧縮)方法【実績記録】

雑学

先人の知恵を拝借してうまくいったことを残す記事です。
まず、参考にさせて頂いたWebページから紹介させて下さい。

参考ページ紹介

流れ

  1. Pillowインストール
  2. サイズ変更(今回はthumbnailで)

作業メモ

元データ:1000px * 1000px、 298KB jpg
サイズ変更後:500px * 500px、 30KB jpg

Pillowインストール

% pip install Pillow
Collecting Pillow
  Downloading pillow-10.4.0-cp312-cp312-macosx_11_0_arm64.whl.metadata (9.2 kB)
Downloading pillow-10.4.0-cp312-cp312-macosx_11_0_arm64.whl (3.4 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.4/3.4 MB 43.9 MB/s eta 0:00:00
Installing collected packages: Pillow
Successfully installed Pillow-10.4.0
% pip list
Package Version
------- -------
pillow  10.4.0
pip     24.2

サイズ変更(今回はthumbnailで)

% cat Test.py
from PIL import Image

filedir = "/Users/XXX(UserName)/Library/Mobile Documents/com~apple~CloudDocs/Downloads/"
filename_org = "test.jpg"
filename_new = "test2.jpg"
test_img = Image.open("{0}{1}".format(filedir, filename_org))
test_img.thumbnail(size=(500, 500))
  #test_img.thumbnail(size=(500, 500),resample=Image.LANCZOS, interpolation=INTER_AREA)
  # → 色々工夫しても変わらず。デフォルトと同じか
test_img.save("{0}{1}".format(filedir, filename_new,quality=95))

動作確認

% python Test.py

関連記事