Открытие POSTed файла с PIL Image - PullRequest
1 голос
/ 01 февраля 2010

Используя WSGI, webob и PIL, я пытаюсь использовать Image.open() для файла непосредственно из запроса. Однако Image.open() всегда выдает исключение «невозможно идентифицировать файл изображения». Изображение является единственным полем, никакие другие переменные POST или GET не используются. Файл приходит из стандартной формы загрузки HTML с enctype = "multipart / form-data".

import Image, ImageFile
from webob import Request

def application(environ, start_response):
    req = Request(environ)
    req.make_body_seekable() 
    im = Image.open(req.body_file) # "Cannot identify image file"
    im.save('testfileio.png','PNG')

Полагаю, я неправильно загружаю данные загруженного изображения, но не уверен, что это будет правильным способом.

1 Ответ

3 голосов
/ 01 февраля 2010

Я не поклонник webob, но я думаю, что body_file содержит содержимое всего поста, а не только ваше изображение документы , кажется, подтверждают это.

Что находится в req.POST ['nameOfFileControl']? У этого есть дескриптор файла? Это будет дескриптор файла, который необходим Image.open.

...