flask之文件上傳

1、創建表單提交頁面,如:upload.html

<html>
<head><title>File Upload</title>
</head>
<body><form action="http://localhost:8888/uploadfile" method="POST" enctype="multipart/form-data"><input type="file" name="file001"  /><input type="submit" value="提交" /></form>
</body>
</html>

2、url地址關聯表單提交頁面

@app.route('/upload')
def uploadFile():return render_template('upload.html')

3、提交表單后定義執行保存的函數

@app.route('/uploadfile',methods=['GET','POST'])
def save():if request.method == 'POST':f = request.files['file001'] #提取文件f.save(os.path.join(app.config['UPLOAD_FOLDER'], secure_filename(f.filename)))

4、完整演示代碼

from flask import Flask, render_template, request
from werkzeug.utils import secure_filenameimport osapp = Flask(__name__)
app.config['UPLOAD_FOLDER'] = 'upload/'   #app.config['UPLOAD_FOLDER'] 定義上傳文件夾的路徑 @app.route('/upload')
def uploadFile():return render_template('upload.html')@app.route('/uploadfile',methods=['GET','POST'])
def save():if request.method == 'POST':f = request.files['file001'] #提取文件f.save(os.path.join(app.config['UPLOAD_FOLDER'], secure_filename(f.filename)))  #保存文件,目標文件的名稱可以是硬編碼的,也可以從 ?request.files[file] ?對象的? filename ?屬性中獲取。但是,建議使用 ?secure_filename()? 函數獲取它的安全版本。return 'file uploaded successfully'else:return render_template('upload.html')if __name__ == '__main__':app.run(debug=True)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/214017.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/214017.shtml
英文地址,請注明出處:http://en.pswp.cn/news/214017.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

自定義類型詳解(1)

文章目錄 目錄1. 結構體1.1 結構的基礎知識1.2 結構的聲明1.3 特殊的聲明1.4 結構的自引用1.5 結構體變量的定義和初始化1.6 結構體內存對齊1.7 修改默認對齊數1.8 結構體傳參 2. 位段2.1 什么是位段2.2 位段的內存分配2.3 位段的跨平臺問題2.4 位段的應用 3. 枚舉3.1 枚舉類型…

linux向日葵開機自啟動

有個服務需要先開啟: sudo systemctl start runsunloginclient.service 開機自啟動服務: sudo systemctl enable runsunloginclient.service 然后再啟動就可以了 sudo systemctl status runsunloginclient.service 開機自啟后進行檢查service服務狀態 開發板ubuntu系統上如…

蝦皮選品:如何在蝦皮平臺上進行選品以提高銷售額和利潤

在蝦皮&#xff08;Shopee&#xff09;平臺上進行選品時&#xff0c;可以遵循以下策略和技巧&#xff0c;以便找到有潛力的產品并提高銷售額。 先給大家推薦一款shopee知蝦數據運營工具 知蝦免費體驗地址&#xff08;復制瀏覽器打開&#xff09;&#xff1a;d.ddqbt.com/JU5o …

Java并發(二)

一、并發編程三要素 1、原子性 原子性指的是一個或者多個操作&#xff0c;要么全部執行并且在執行的過程中不被其他操作打斷&#xff0c;要么就全部都不執行。 2、可見性 可見性指多個線程操作一個共享變量時&#xff0c;其中一個線程對變量進行修改后&#xff0c;其他線程可以…

亞信安慧通過ISO20000認證,AntDB數據庫團隊服務能力再上新臺階

近日&#xff0c;湖南亞信安慧科技有限公司&#xff08;簡稱“亞信安慧”&#xff09;獲得《信息安全管理服務管理體系認證證書》&#xff0c;標志著公司已建立起一套與國際對標的IT系統管理體系&#xff0c;在信息技術服務能力上取得了新的里程碑。 圖1 亞信安慧通過ISO20000認…

【Unity】Addressable包資源加載失敗:CRC Mismatch.

Error while downloading Asset Bundle: CRC Mismatch. 是資源下載校驗失敗&#xff0c;但是資源和上次打包的資源是一樣的。沒有排查到原因&#xff0c;在谷歌搜索后看到 大概就是指Unity版本修改后打包&#xff0c;會破壞原來的CRC信息&#xff0c;導致導報出來的資源無法通…

軟件測試BUG管理神器——禪道

背景與用途 使用背景 針對開發的產品進行BUG質量管理&#xff0c;通過需求、任務、bug來進行交相互動&#xff0c;終通過項目拿到合格的產品&#xff01; 場景介紹 測試人員提出bug -> 開發人員解決bug -> 測試人員驗證關閉 下載安裝 一、搜索禪道官網 1.1在瀏覽器搜索…

Boost:asio單io_service,多線程run

io_service相當于注冊異步回調的一個上下文環境,而run相當于處理異步io的上下文(通常是一個線程)。 單io_service,多線程run,相當于多個線程同時來處理注冊在一個io_service上的回調: //sio_mth.cpp #include <boost/asio.hpp> #include <boost/date_time/pos…

Java集合進階

目錄 集合體系結構 Collection集合 List集合 ArrayList集合 LinkedList集合 集合體系結構 注意:有序:存進去的數組和取出來時一樣 而不是大小的那種有序 Collection集合 單列集合頂層接口Collection import java.util.ArrayList; import java.util.Collection;public cl…

外貿獲客怎么做?有哪些技巧?

外貿獲客是許多企業拓展海外市場的關鍵一環&#xff0c;為了成功地吸引潛在客戶&#xff0c;我們需要了解一些基本的獲客技巧&#xff0c;本文將分享一些實用的方法和技巧&#xff0c;幫助您在外貿領域獲得更多的客戶。 一、了解目標客戶 在開展外貿業務之前&#xff0c;了解…

java Optional類

Java 8 引入的 Optional 類,主要解決的問題是空指針異常&#xff08;NullPointerException&#xff09; 返回值/修飾符方法詳細static Optionalempty() 返回一個空的 Optional實例。Optional<String> stringOptional Optional.empty();booleanequals(Object obj) 判斷…

IO流的使用(四)

對象序列化機制 概念&#xff1a;允許把內存中的Java對象轉換成與平臺無關的二進制流&#xff0c;從而允許把這種二進制流持久地保存在磁盤上&#xff0c;或通過網絡將這種二進制流傳輸到另一個網絡節點&#xff1b;當其它程序取了這種二進制流&#xff0c;就可恢復成原來的Ja…

C# OpenCvSharp DNN 部署YOLOV6目標檢測

目錄 效果 模型信息 項目 代碼 下載 C# OpenCvSharp DNN 部署YOLOV6目標檢測 效果 模型信息 Inputs ------------------------- name&#xff1a;image_arrays tensor&#xff1a;Float[1, 3, 640, 640] -------------------------------------------------------------…

一個不上進的愛好,讓我走進了計算機世界

為什么當初選擇計算機行業 當初選擇計算機專業&#xff0c;真的就是覺得學習計算機專業&#xff0c;就可以經常接觸計算機&#xff0c;可以有很多的機會可以玩游戲。 后來高考的時候&#xff0c;考試成績也不理想&#xff0c;分數就不好意思說了。但是喜從天降&#xff0c;居…

Windows Terminal的半透明效果

打開Windows Terminal的半透明效果 最終實現效果&#xff1a; 系統&#xff1a;win11 23H2 步驟&#xff1a; 1.winx打開終端 2.右鍵打開設置 3.打開外觀->亞克力材料開啟 4.默認值->外觀->透明度&#xff0c;按喜好選擇即可

Linux+Moba+虛擬機

軟件&#xff1a; VMware Workstation ProMobaXterm 簡介 是一款由VMware公司開發的強大的虛擬機軟件。它可以在單臺物理計算機上創建、運行和管理多個虛擬機&#xff0c;每個虛擬機都可以獨立運行不同的操作系統和應用程序。 功能&#xff1a; 虛擬化&#xff1a;能…

PPP協議概述與實驗示例

PPP協議概述與實驗示例 概述 PPP&#xff08;Point-to-Point Protocol&#xff09;是一種用于在點對點連接上傳輸多協議數據包的標準方法。它已經成為最廣泛使用的互聯網接入數據鏈路層協議&#xff0c;可以與各種技術結合&#xff0c;如ADSL、LAN等&#xff0c;實現寬帶接入…

如何通過內網穿透工具實現任意瀏覽器遠程訪問Linux本地zabbix web管理界面

前言 Zabbix是一個基于WEB界面的提供分布式系統監視以及網絡監視功能的企業級的開源解決方案。能監視各種網絡參數&#xff0c;保證服務器系統的安全運營&#xff1b;并提供靈活的通知機制以讓系統管理員快速定位/解決存在的各種問題。 本地zabbix web管理界面限制在只能局域…

MyBatis-Plus - 論 1 個實體類被 N 個DAO 類綁定,導致 MP 特性(邏輯刪)失效的解決方案

問題描述 最近遇到一個奇奇怪怪的問題&#xff0c;發現 Mybatis-Plus『邏輯刪』特性失效&#xff0c;而且是偶現&#xff0c;有時候可以&#xff0c;有時候又不行。于是開啟了 Debug Mybatis-Plus 源碼之旅 原因分析 我們接下來重點關注 TableInfoHelper 類 /** Copyright (…

算法:兩數之和(暴力解法和優化算法)

暴力解法&#xff1a;使用快慢指針解決&#xff0c;時間復雜度 O(n^2)&#xff0c;空間復雜度 O(n) /*** param {number[]} nums* param {number} target* return {number[]}*/ var twoSum function(nums, target) {let slow 0let fast 1// 如果慢指針沒有超過nums邊界就繼…