How to write png file to target directory from client side by flask


Question

I want to write to file from request.form["file"] but I can't do it.

My contact.html is here.

Client side code is like this...

<form action="contact" method="POST" enctype="multipart/form-data">
<input type="file" name="file">
<input type="submit" value="submit">
</form>

Server side is like this

filestorage = request.files["file"]

print type(_file) #-> <FileStorage: u"__proto.png" ("img/png")>

# I tried below this , but it doesn't work.

f = open("tmp.png","wb")
f.write(filestorage)

I want to write this which is png file to uploaded file somewhere. Do you have any idea?

Thanks in advance.

1
1
4/21/2013 3:23:44 PM

You have the save() method of the FileStorage object, that lets you save the file content to disk:

file.save('/path/to/your/file')

Flask Documentation: http://werkzeug.pocoo.org/docs/datastructures/#werkzeug.datastructures.FileStorage.save

A useful tutorial: http://flask.pocoo.org/docs/patterns/fileuploads/

2
4/21/2013 4:06:27 PM

Licensed under: CC-BY-SA with attribution
Not affiliated with: Stack Overflow
Icon