2015-07-22 2 views
0

У меня есть файл изображения, декодированный base64. Теперь я хочу сохранить файл изображения в указанный каталог.Как сохранить изображение с помощью Python

каталог описывается как image_dir_path

image_dir_path = '/images/store/' 
image_file = base64.b64decode(image_file) 

Как я могу сохранить image_file в image_dir_path?

Я пробовал shutil.copy(image_file, image_dir_path), но это не работает для моего дела.

Извините, что я не нашел такой вопрос.

+0

Вы пробовали использовать подушку или PIL? – muddyfish

+0

Я пытался использовать PIL, но, к сожалению, не смог найти способы сохранить изображение в определенном каталоге ... – REI

ответ

1

Вы можете написать любой контент в файл с файловым объектом и его методом записи. В качестве примера, давайте захватить некоторые base64 кодированные данные из Интернета:

import base64, urllib 

decoded = base64.b64decode(urllib.urlopen("http://git.io/vYT4p").read())  
with open('/tmp/31558315.png', 'w') as handle: 
    handle.write(decoded) 

Вы должны быть в состоянии открыть файл под /tmp/31558315.png как обычный образ.

+0

Спасибо! Это сработало, я получил [Errno 21]. Это каталог: «images/store». – REI

+0

@ReiKudo, Ошибка 21 [означает] (http://www.virtsync.com/c-error-codes-include-errno) * - это каталог *. Казалось, что вы что-то пишете, но он терпит неудачу, потому что цель - это каталог, которого на данный момент не ожидается. – miku

+0

Я понял это неправильно. Ошибка произошла с тех пор, как я попытался открыть каталог. Спасибо @miku. – REI