У меня есть рабочий код, но необходимо немного его оптимизировать. (Данный код писал сам, так что не халявщик)
Что я делаю:
Беру нудный URL картинки и сохраняю картинку в папке, далее открываю и если она не подходящего формата, изменяю её на подходящий, сохраняю, открываю её и накладываю вотермарк, сохраняю заменяя прошлую, далее открываю и изменяю её размеры, сохраняю.
Все действия быстро выполняются, кроме первого сохранения её с оригинала:
urllib.urlretrieve(IMG_URL, '' + str(DATA_DIR) + '/' + str(ID) + '.jpg')
Save IMG: 14.438s
Save IMG: 13.813s
Если картинка битая, то я беру текст нужный и накладываю его просто поверх картинки, и это занимает время:
Save IMG: 0.297s
Save IMG: 0.203s
Подскажите пожалуйста возможные пути оптимизации. Как манипулировать изображением не сохраняя его в промежутках?
Python 2.5
Полный код:
urllib.urlretrieve(IMG_URL, '' + str(DATA_DIR) + '/' + str(ID) + '.jpg')
img = Image.open('' + str(DATA_DIR) + '/' + str(ID) + '.jpg')
img = img.convert('RGB')
img.save('' + str(DATA_DIR) + '/' + str(ID) + '.jpg')
wm = Image.open("1.png")
add_watermark(img, wm, 1, 50).save('' + str(DATA_DIR) + '/' + str(ID) + '.jpg')
img = Image.open('' + str(DATA_DIR) + '/' + str(ID) + '.jpg')
thumbs = ()
thumbs += create_thumbnails(img, (300,))
thumbs[0].save('' + str(DATA_DIR) + '/' + str(ID) + '.jpg')