Flask入门之上传文件到服务器的方法示例


Posted in Python onJuly 18, 2018

今天要做一个简单的页面,可以实现将文件 上传到服务器(保存在指定文件夹)

#Sample.py

# coding:utf-8

from flask import Flask,render_template,request,redirect,url_for
from werkzeug.utils import secure_filename
import os

app = Flask(__name__)

@app.route('/upload', methods=['POST', 'GET'])
def upload():
  if request.method == 'POST':
    f = request.files['file']
    basepath = os.path.dirname(__file__) # 当前文件所在路径
    upload_path = os.path.join(basepath, 'static\uploads',secure_filename(f.filename)) #注意:没有的文件夹一定要先创建,不然会提示没有该路径
    f.save(upload_path)
    return redirect(url_for('upload'))
  return render_template('upload.html')

if __name__ == '__main__':
  app.run(debug=True)

#upload.html

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
  <h1>文件上传示例</h1>
  <form action="" enctype='multipart/form-data' method='POST'>
    <input type="file" name="file">
    <input type="submit" value="上传">
  </form>
</body>
</html>

这里要注意:<form>标签里的enctype属性一定要填写'multipart/form-data'

意思是不加密,上传文件的时候一定要选这个,不然不行

好了接下来我们看看运行效果

1. 初始界面

Flask入门之上传文件到服务器的方法示例

2. 选择一个文件,点击上传

Flask入门之上传文件到服务器的方法示例

3. 最后网页会回到初始界面,然后上传的文件,也保存在我们指定的目录上了

Flask入门之上传文件到服务器的方法示例

至此,项目结束@@

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用7z解压软件备份文件脚本分享
Feb 21 Python
python操作数据库之sqlite3打开数据库、删除、修改示例
Mar 13 Python
Django框架多表查询实例分析
Jul 04 Python
Python连接Redis的基本配置方法
Sep 13 Python
Python多线程原理与用法实例剖析
Jan 22 Python
Python动态赋值的陷阱知识点总结
Mar 17 Python
python通过TimedRotatingFileHandler按时间切割日志
Jul 17 Python
Pycharm 文件更改目录后,执行路径未更新的解决方法
Jul 19 Python
PyTorch中Tensor的维度变换实现
Aug 18 Python
Python Django2 model 查询介绍(条件、范围、模糊查询)
Mar 16 Python
PyQt实现计数器的方法示例
Jan 18 Python
python入门学习关于for else的特殊特性讲解
Nov 20 Python
flask入门之文件上传与邮件发送示例
Jul 18 #Python
Sanic框架流式传输操作示例
Jul 18 #Python
django 发送邮件和缓存的实现代码
Jul 18 #Python
python实现linux下抓包并存库功能
Jul 18 #Python
python调用tcpdump抓包过滤的方法
Jul 18 #Python
Python使用Selenium模块模拟浏览器抓取斗鱼直播间信息示例
Jul 18 #Python
解决Python3中的中文字符编码的问题
Jul 18 #Python
You might like
Views rows style模板重写代码
2011/05/16 PHP
通过Unicode转义序列来加密,按你说的可以算是混淆吧
2007/05/06 Javascript
利用js对象弹出一个层
2008/03/26 Javascript
ajax的hide隐藏问题解决方法
2012/12/11 Javascript
JavaScript设置body高度为浏览器高度的方法
2015/02/09 Javascript
jQuery实现平滑滚动页面到指定锚点链接的方法
2015/07/15 Javascript
使用JQuery实现智能表单验证功能
2016/03/08 Javascript
JavaScript中有关一个数组中最大值和最小值及它们的下表的输出的解决办法
2016/07/01 Javascript
两种简单的跨域方法(jsonp、php)
2017/01/02 Javascript
Angular.js中定时器循环的3种方法总结
2017/04/27 Javascript
使用Vue自定义指令实现Select组件
2018/05/24 Javascript
修改vue+webpack run build的路径方法
2018/09/01 Javascript
微信小程序实现笑脸评分功能
2018/11/03 Javascript
Element UI框架中巧用树选择器的实现
2018/12/12 Javascript
Vue源码之关于vm.$delete()/Vue.use()内部原理详解
2019/05/01 Javascript
微信小程序vant弹窗组件的实现方式
2020/02/21 Javascript
python3+PyQt5使用数据库窗口视图
2018/04/24 Python
Python 中导入csv数据的三种方法
2018/11/01 Python
python多个模块py文件的数据共享实例
2019/01/11 Python
Python 支付整合开发包的实现
2019/01/23 Python
Python+OpenCV图片局部区域像素值处理详解
2019/01/23 Python
浅析Python 中几种字符串格式化方法及其比较
2019/07/02 Python
python中时间、日期、时间戳的转换的实现方法
2019/07/06 Python
Python pip安装模块提示错误解决方案
2020/05/22 Python
浅谈numpy中函数resize与reshape,ravel与flatten的区别
2020/06/18 Python
一文解决django 2.2与mysql兼容性问题
2020/07/15 Python
Jmeter HTTPS接口测试证书导入过程图解
2020/07/22 Python
HTML5 input元素类型:email及url介绍
2013/08/13 HTML / CSS
记一次高分屏下canvas模糊问题
2020/02/17 HTML / CSS
马来西亚网上购物平台:ezbuy
2018/02/13 全球购物
全球最大的户外用品零售商之一:The House
2018/06/12 全球购物
C语言编程题
2015/03/09 面试题
2014年库房工作总结
2014/11/26 职场文书
计划生育责任书
2015/05/09 职场文书
python 遍历磁盘目录的三种方法
2021/04/02 Python
python中pycryto实现数据加密
2022/04/29 Python