本文最后更新于2014年7月20日,已超过 1 年没有更新,如果文章内容失效,还请反馈给我,谢谢!
因为从网上爬取了一堆图片的分辨率都各不相同,而且图片数量较大,所以从网上找了Python处理图片的代码,自己修改功能/bug之后的代码如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from PIL import Image# import Image --> "ImportError: No module named Image"
import glob, os
def thumbnail():
for files in glob.glob('D:\photos\*.jpg'):
filepath,filename = os.path.split(files)
filterame,exts = os.path.splitext(filename)
opfile = 'D:\photos2\'# output path
if (os.path.isdir(opfile)==False):
os.mkdir(opfile)
im = Image.open(files)
w,h = im.size
#im_ss = im.resize((400,400))
#im_ss = im.convert('P')
im_ss = im.resize((int(w*0.12), int(h*0.12)))
im_ss.save(opfile+filterame+'.jpg')
if __name__=='__main__':
thumbnail()
print u'哈哈OK啦...'
要注意的地方就是直接:import Image会报错,需要将其修改为:from PIL import Image
然后就是路径字符串中的反斜杠问题,其实在Windows系统上路径的“正统”写法应该是:
path = os.path.normcase(“c:/mydir/mysubdir/”)
os.path.normcase在Windows平台下会自动把正斜杠转换成反斜杠。