Я пытаюсь сохранить изображение jpg из формы приложения Flask. Следующий код работает нормально:
blob = request.files[canvas_key]
blob.stream.seek(0)
data = blob.stream.read()
string_io = cStringIO.StringIO(data)
string_io имеет тип <cStringIO.StringI object at 0x10bf2bf10>
.
Тем не менее, когда я пытаюсь: Image.open(string_io)
, я получаю эту ошибку: IOError: cannot identify image file
.
Использование stream.seek(0)
, кажется, решает эту проблему для других людей, но в моем случае это не так.
string_io
: 'RIFF\xa2_\x00\x00WEBPVP8', что имеет смысл, потому что я получаю изображение из 'image/webp, and "In 2010 Google introduced the WebP picture format, which uses RIFF as a container". This is the specific line of javascript that creates the image:
var dataURL = canvas.toDataURL('image/webp');` - person Rose Perrone   schedule 04.06.2014WebP
вообще существовал, когда PIL последний раз обновлялся. - person Mark Ransom   schedule 04.06.2014