命令爲 ./this_file_name.py your_image_folder scale_number
#! /usr/bin/python
# -*- coding: UTF-8 -*-
import argparse
from PIL import Image
import glob, os, shutil
if __name__ == "__main__":
parser = argparse.ArgumentParser( description = "Resize images" )
parser.add_argument("fn", help="folder name in the current dir")
parser.add_argument("scale", help="The scale factor, eg 0.3 " )
args = parser.parse_args()
ratio = float(args.scale)
fn =args.fn
newfn = fn+"-thumbnail"
if os.path.exists(newfn):
shutil.rmtree(newfn)
os.mkdir(newfn)
for infile in glob.glob(fn+"/*.JPG"):
file, ext = os.path.splitext(infile)
im = Image.open(infile)
ori_width = im.width
ori_height = im.height
file = file[len(fn):]
new_wid = int(ori_width * ratio)
new_hei = int(ori_height * ratio)
im.thumbnail((new_wid, new_hei), Image.ANTIALIAS)
im.save(newfn+file+".jpg", "JPEG")