3

WSGI、webob、PILを使用Image.open()して、リクエストから直接ファイルを使用しようとしています。ただし、Image.open()常に「画像ファイルを識別できません」という例外をスローします。画像は唯一のフィールドであり、他のPOST変数またはGET変数は使用されません。このファイルは、enctype = "multipart/form-data"を使用した標準のHTMLアップロードフォームから取得されます。

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')

私の推測では、アップロードされた画像データを正しくロードしていませんが、それを行う正しい方法がわかりません。

4

1 に答える 1

4

私はwebobに精通していませんが、body_fileには、画像だけでなく投稿全体のコンテンツが含まれていると思います。ドキュメントはこれを確認しているようです。

req.POST ['nameOfFileControl']には何が含まれていますか?ファイルハンドルはありますか?これが、Image.openが必要とするファイルハンドルになります。

于 2010-02-01T18:23:41.697 に答える