如何在上传之前获取图像的字符串表示?

时间:2011-06-03 04:14:36

标签: python image google-app-engine blobstore bytestring

我正在尝试拦截HTML表单输入控件中的图像,以便在服务器端处理之前将其转换为字节字符串。

如何拦截文件?

upload_files = self.get_uploads('file')
# Intercept here to do something different than just upload 
blob_info = upload_files[0]

如何将其转换为可以在以后转换回图像的字节字符串?

我正在使用Python和App Engine。

1 个答案:

答案 0 :(得分:0)

假设您的上传控件位于名为“image”的表单中,并且您正在使用Werkzeug's FileStorage

img_stream = self.form.image.data
mimetype = img_stream.content_type
img_str = img_stream.read().encode('base64').replace('\n', '')

data_uri = 'data:%s;%s,%s' % (mimetype, 'base64', img_str)

您的data_uri现在包含您需要的字符串信息。

感谢大家的有益评论!