本文实例为大家分享了python3-flask文件上传操作的具体代码,供大家参考,具体内容如下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
# -*- coding: utf-8 -*- import os import uuid import platform from flask import Flask,request,redirect,url_for from werkzeug.utils import secure_filename if platform.system() = = "Windows" : slash = '\\' else : platform.system() = = "Linux" slash = '/' UPLOAD_FOLDER = 'upload' ALLOW_EXTENSIONS = set ([ 'html' , 'htm' , 'doc' , 'docx' , 'mht' , 'pdf' ]) app = Flask(__name__) app.config[ 'UPLOAD_FOLDER' ] = UPLOAD_FOLDER #判断文件夹是否存在,如果不存在则创建 if not os.path.exists(UPLOAD_FOLDER): os.makedirs(UPLOAD_FOLDER) else : pass # 判断文件后缀是否在列表中 def allowed_file(filename): return '.' in filename and \ filename.rsplit( '.' , 1 )[ 1 ] in ALLOW_EXTENSIONS @app .route( '/' ,methods = [ 'GET' , 'POST' ]) def upload_file(): if request.method = = 'POST' : #获取post过来的文件名称,从name=file参数中获取 file = request.files[ 'file' ] if file and allowed_file( file .filename): # secure_filename方法会去掉文件名中的中文 filename = secure_filename( file .filename) #因为上次的文件可能有重名,因此使用uuid保存文件 file_name = str (uuid.uuid4()) + '.' + filename.rsplit( '.' , 1 )[ 1 ] file .save(os.path.join(app.config[ 'UPLOAD_FOLDER' ],file_name)) base_path = os.getcwd() file_path = base_path + slash + app.config[ 'UPLOAD_FOLDER' ] + slash + file_name print (file_path) return redirect(url_for( 'upload_file' ,filename = file_name)) return ''' <!doctype html> <title>Upload new File</title> <h1>Upload new File</h1> <form action="" method=post enctype=multipart/form-data> <p><input type=file name=file> <input type=submit value=Upload> </form> ''' if __name__ = = "__main__" : app.run(host = '0.0.0.0' ,port = 5000 ) |
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/diyiday/article/details/80514135