新聞中心
在 Flask 中處理文件上傳非常簡單。它需要一個(gè) HTML 表單,其 ?enctype? 屬性設(shè)置為“?multipart/form-data”?,將文件發(fā)布到 URL。

成都創(chuàng)新互聯(lián)公司是一家集成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、網(wǎng)站頁面設(shè)計(jì)、網(wǎng)站優(yōu)化SEO優(yōu)化為一體的專業(yè)網(wǎng)站設(shè)計(jì)公司,已為成都等多地近百家企業(yè)提供網(wǎng)站建設(shè)服務(wù)。追求良好的瀏覽體驗(yàn),以探求精品塑造與理念升華,設(shè)計(jì)最適合用戶的網(wǎng)站頁面。 合作只是第一步,服務(wù)才是根本,我們始終堅(jiān)持講誠信,負(fù)責(zé)任的原則,為您進(jìn)行細(xì)心、貼心、認(rèn)真的服務(wù),與眾多客戶在蓬勃發(fā)展的市場環(huán)境中,互促共生。
URL 處理程序從 ?request.files[]? 對象中提取文件,并將其保存到所需的位置。
每個(gè)上傳的文件首先會保存在服務(wù)器上的臨時(shí)位置,然后將其實(shí)際保存到它的最終位置。
目標(biāo)文件的名稱可以是硬編碼的,也可以從 ?request.files[file] ?對象的? filename ?屬性中獲取。
但是,建議使用 ?secure_filename()? 函數(shù)獲取它的安全版本。
可以在 Flask 對象的配置設(shè)置中定義默認(rèn)上傳文件夾的路徑和上傳文件的最大大小。
app.config['UPLOAD_FOLDER'] 定義上傳文件夾的路徑
app.config['
MAX_CONTENT_LENGTH'] 指定要上傳的文件的最大大?。ㄒ宰止?jié)為單位)
以下代碼具有 ?'/upload' ?URL 規(guī)則,該規(guī)則在 templates 文件夾中顯示? 'upload.html'?,以及 ?'/upload-file' ?URL 規(guī)則,用于調(diào)用 ?uploader() ?函數(shù)處理上傳過程。
?'upload.html' ?有一個(gè)文件選擇器按鈕和一個(gè)提交按鈕。
File Upload
您將看到如下所示的界面。
選擇文件后,單擊提交。
表單的? post ?方法調(diào)用? '/upload_file'? URL。
底層函數(shù) ?uploader()? 執(zhí)行保存操作。
以下是 Flask 應(yīng)用程序的 python 代碼。
from flask import Flask, render_template, requestfrom werkzeug.utils import secure_filename
import os app = Flask(__name__) app.config['UPLOAD_FOLDER'] = 'upload/' @app.route('/upload') def upload_file(): return render_template('upload.html') @app.route('/uploader',methods=['GET','POST']) def uploader(): if request.method == 'POST': f = request.files['file']print(request.files)f.save(os.path.join(app.config['UPLOAD_FOLDER'], secure_filename(f.filename)))
return 'file uploaded successfully'
else:
return render_template('upload.html')
if __name__ == '__main__': app.run(debug=True)
注意:app.config['UPLOAD_FOLDER'] = 'upload/'
upload 前面不能加“/”。
上傳成功會顯示以下畫面:
上次文件被放到根目錄的 upload 文件夾下:
本文題目:創(chuàng)新互聯(lián)Flask教程:Flask文件上傳
分享網(wǎng)址:http://m.fisionsoft.com.cn/article/cceiocs.html


咨詢
建站咨詢
