python 批量生成缩略图

下面类能批量生成缩略图,调用方式

fromFile2thumbnails(fileDir = sys.path[0],format ='jpg',size = (128,128)').run()

默认仅当前文件夹中的所有jpg图像,默认缩略图大小 128*128 , 代码如下

from PIL import Image
import glob,os,sys

class fromFile2thumbnails(object):
def init(self,fileDir = sys.path[0],format ='jpg',size = (128,128)):
self._fileDir = fileDir
self._size = size
self._format = format
self._filePath = os.path.join(fileDir, '*.'+format)
self._thumbPath = os.path.join(fileDir,'thumb')

def run(self):
if not os.path.exists(self._thumbPath):
os.mkdir(self._thumbPath)
for infile in glob.glob(self._filePath):
ext = os.path.splitext(os.path.split(infile)[1])[0]
fPath = os.path.join(self._thumbPath,ext)
# print(file)
im = Image.open(infile)
# im.show()
im.thumbnail(self._size)
im.save(fPath+".t.jpg","JPEG")

print('缩略图完成')

fromFile2thumbnails(r'D:\Users\Public\Pictures\Sample Pictures').run()

会在文件夹中建立一个 thumb 文件夹并生成缩略图

posted @ 2017-08-20 18:51  我是一个毛毛虫  阅读(1456)  评论(0)    收藏  举报