
まくまく
プラグラミング言語「PYTHON」を使ってみよう!!業務自動化・効率化の実例を踏まえ、解説できればと思っています。対象は、プログラムを学び始めた初心者向けとなります。今回はDatetimeを使用してファイル保存時に日付と時間を追加してみようと思います。
使用するのはDatetime
使用するのは、日付や時間を扱うことができるDatetimeライブラリです。ここではDatetimeがインストールされているのを前提として書き進めていきます。
サンプルコード
from PIL import Image
import glob
import datetime
img_files = glob.glob('*.jpg')
for file_name in img_files:
im = Image.open(file_name)
width = 500
height = int(im.height * width / im.width)
im_resized = im.resize((width, height), Image.LANCZOS)
today = datetime.datetime.now()
im_resized.save('resize500_'+str(datetime . date . today ( ))+'_'+str(file_name))
コメント
- 「img_files = glob.glob(‘*.jpg’)」でフォルダに入っているJPGファイルを取得
- 「for file_name in img_files:」で繰り返し処理
- 「width = 100」でリサイズ。今回は100ピクセルとした
- 「height = int(im.height * width / im.width)」で縦横の縮小率を設定
- 「im_resized = 〜」でリサイズ実行
- 「im_resized.save 〜」で名前を付けて保存
前回作った画像のリサイズプログラムに日付を表示してみました。
これ>>>【Python】Pillow 複数の画像を一括でリサイズする方法
ファイル書き出しの部分に 「today = datetime.datetime.now()」と「str(datetime . date . today ( ))」を追加しただけです。
書き方は複数あって、
日付のみ:str(datetime . date . today ( )
日付と時間:str(datetime . datetime . now ( )
カスタム:str(today . strftime (‘%Y%m%d-%H%M%S’)
日付と時間:str(datetime . datetime . now ( )
カスタム:str(today . strftime (‘%Y%m%d-%H%M%S’)
※ファイル書き出し時に使用する場合は、strにして文字列にする必要があります。
最後の「%Y%m%d-%H%M%S」が一番使い勝手が良いように思いますね。日付だけ表示したいなら「「%Y%m%d」だけにするとかカスタマイズができます。