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练习程序批量修改文件名
Jan 16 Python
Python 搭建Web站点之Web服务器网关接口
Nov 06 Python
python去掉行尾的换行符方法
Jan 04 Python
Python socket实现的简单通信功能示例
Aug 21 Python
基于Python对数据shape的常见操作详解
Dec 25 Python
python日志logging模块使用方法分析
May 23 Python
Python Django Cookie 简单用法解析
Aug 13 Python
django-rest-swagger的优化使用方法
Aug 29 Python
django ORM之values和annotate使用详解
May 19 Python
python中wheel的用法整理
Jun 15 Python
Python lambda表达式原理及用法解析
Aug 18 Python
python爬虫破解字体加密案例详解
Mar 02 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
十天学会php之第六天
2006/10/09 PHP
php中突破基于HTTP_REFERER的防盗链措施(stream_context_create)
2011/03/29 PHP
PHP中OpenSSL加密问题整理
2017/12/14 PHP
PHP基于mcript扩展实现对称加密功能示例
2019/02/21 PHP
PHP抽象类与接口的区别实例详解
2019/05/09 PHP
javascript contains和compareDocumentPosition 方法来确定是否HTML节点间的关系
2010/02/04 Javascript
jquery ajax return没有返回值的解决方法
2011/10/20 Javascript
浏览器加载、渲染和解析过程黑箱简析
2012/11/29 Javascript
子窗体与父窗体传值示例js代码
2013/08/01 Javascript
5分钟理解JavaScript中this用法分享
2013/11/09 Javascript
PHPExcel中的一些常用方法汇总
2015/01/23 Javascript
javascript html实现网页版日历代码
2016/03/08 Javascript
AngularJS  ng-table插件设置排序
2016/09/21 Javascript
vue脚手架搭建过程图解
2018/06/06 Javascript
nodejs用gulp管理前端文件方法
2018/06/24 NodeJs
Angular项目如何升级至Angular6步骤全纪录
2018/09/03 Javascript
NodeJS加密解密及node-rsa加密解密用法详解
2018/10/12 NodeJs
Element-Ui组件 NavMenu 导航菜单的具体使用
2019/10/24 Javascript
Python使用time模块实现指定时间触发器示例
2017/05/18 Python
解决python升级引起的pip执行错误的问题
2018/06/12 Python
对python中的*args与**kwgs的含义与作用详解
2019/08/28 Python
python匿名函数的使用方法解析
2019/10/10 Python
HTML5中的nav标签学习笔记
2016/06/24 HTML / CSS
台湾最大银发乐活百货:乐龄网
2018/05/21 全球购物
查找廉价航班和发现新目的地:Kiwi.com
2019/02/25 全球购物
《童趣》教学反思
2014/02/19 职场文书
项目工作说明书
2014/07/29 职场文书
学习教师敬业奉献模范事迹材料思想汇报
2014/09/19 职场文书
公务员学习习总书记“三严三实”思想汇报
2014/09/19 职场文书
公司介绍信范文
2015/01/31 职场文书
向雷锋同志学习倡议书
2015/04/27 职场文书
宝宝满月宴答谢词
2015/09/30 职场文书
个人落户申请书怎么写?
2019/06/28 职场文书
用Python提取PDF表格的方法
2021/04/11 Python
python 如何执行控制台命令与操作剪切板
2021/05/20 Python
详解Laravel框架的依赖注入功能
2021/05/27 PHP