Getting the name & extension of an uploaded file using python (google app engine)

此生再无相见时 提交于 2019-12-07 08:19:32

问题


I am using a form to upload files to the google app engine and store them in the datastore. l would also like to store the original file name and extension for presentation purposes.

Is there a way of retrieving this data from the post sever side or can it only be gathered client side and sent as separate fields (e.g. http://www.tinyurl.com/5jybfq)?

Many thanks.

For those that follow the solution dased on the answer below:

this_file = self.request.params["file_upload_form_field_name"].filename 

(this_file_name, this_file_extension) = os.path.splitext(this_file) 

self.response.out.write("File name: " + this_file_name + "<br>") 

self.response.out.write("File extension: " + this_file_extension + "<br>") 

回答1:


Does the snippet from this email work?

 self.request.params[<form element name with file>].filename



回答2:


Try this...

If your form looks like this:

self.response.out.write('''<form action="/upload" enctype="multipart/form-data" method="post"><input type="file" name="file"/><input type="submit" /></form>''')

Then in your post handler, try this:

class UploadHandler(webapp.RequestHandler):     
    def post(self):
        obj = MyModel()
        obj.filename = self.request.get("file")
        obj.blob = self.request.get("contents")
        obj.put()
        self.redirect('/')

The filename is stored in the "file" parameter. The actual file contents are in the "contents" parameter.



来源:https://stackoverflow.com/questions/1184110/getting-the-name-extension-of-an-uploaded-file-using-python-google-app-engine

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!