Python生成并下载文件后端代码实例


Posted in Python onAugust 31, 2020

txt文件

生成并下载txt文件:

@app.route('/download', methods=['GET'])
def download():
  content = "long text"
  response = make_response(content)
  response.headers["Content-Disposition"] = "attachment;   
  filename=myfilename.txt"
  return response

运行app.py后,在浏览器中输入:http://127.0.0.1:5000/download,直接下载txt文件。

excel 文件

生成并下载excel 文件:

@app.route("/export",methods = ['GET'])
def export():
  out = BytesIO()
  workbook = xlsxwriter.Workbook(out)
  table = workbook.add_worksheet()
  table.write(0, 0, "第1列")
  table.write(0, 1, "第2列")
  table.write(0, 2, "第3列")
  table.write(0, 0, "name")
  table.write(1, 1, "sex")
  table.write(2, 2, "class")
  workbook.close()
  out.seek(0)
  filename = quote("Entity类下载.xlsx")
  rv = send_file(out, as_attachment=True, attachment_filename=filename)
  rv.headers['Content-Disposition'] += "; filename*=utf-8''{}".format(filename)
  return rv

运行app.py后,在浏览器中输入:http://127.0.0.1:5000/export,可以直接下载excel文件。

前后端分离时,接口返回时要注意headers 

def exportExcel():
  workbook = xlwt.Workbook(encoding='utf-8')
  wSheet = workbook.add_sheet("Plan")
  titleFont = xlwt.Font()
  f = BytesIO()
  workbook.save(f)
  f.seek(0)
  filename = quote(saveFile) # 将单个字符串编码转化为 %xx%xx 的形式
  rv = send_file(f, as_attachment=True, attachment_filename=filename)
  rv.headers['Content-Disposition'] += "; filename*=utf-8''{}".format(filename)
  rv.headers['Cache-Control'] = 'no-store'      # 重点在这句!!!!!!!!!!!!!!!!!
  return rv

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

Python 相关文章推荐
Python 创建子进程模块subprocess详解
Apr 08 Python
Python编程中使用Pillow来处理图像的基础教程
Nov 20 Python
python中模块查找的原理与方法详解
Aug 11 Python
让Python更加充分的使用Sqlite3
Dec 11 Python
Python基于生成器迭代实现的八皇后问题示例
May 23 Python
django使用haystack调用Elasticsearch实现索引搜索
Jul 24 Python
Django学习之文件上传与下载
Oct 06 Python
使用pandas实现连续数据的离散化处理方式(分箱操作)
Nov 22 Python
解决Python3下map函数的显示问题
Dec 04 Python
Python如何实现FTP功能
May 28 Python
Keras 实现加载预训练模型并冻结网络的层
Jun 15 Python
Python类super()及私有属性原理解析
Jun 15 Python
python exit出错原因整理
Aug 31 #Python
Python如何将模块打包并发布
Aug 30 #Python
如何以Winsows Service方式运行JupyterLab
Aug 30 #Python
selenium切换标签页解决get超时问题的完整代码
Aug 30 #Python
五分钟带你搞懂python 迭代器与生成器
Aug 30 #Python
python开根号实例讲解
Aug 30 #Python
python一些性能分析的技巧
Aug 30 #Python
You might like
PHP中使用json数据格式定义字面量对象的方法
2014/08/20 PHP
jQuery 使用手册(二)
2009/09/23 Javascript
从jQuery.camelCase()学习string.replace() 函数学习
2011/09/13 Javascript
jquery $.ajax相关用法分享
2012/03/16 Javascript
当滚动条滚动到页面底部自动加载增加内容的js代码
2014/05/13 Javascript
Internet Explorer 11 浏览器介绍:别叫我IE
2014/09/28 Javascript
JS清除选择内容的方法
2015/01/29 Javascript
js实现感应鼠标图片透明度变化的方法
2015/02/20 Javascript
基于jQuery Bar Indicator 插件实现进度条展示效果
2015/09/30 Javascript
JS实现来回出现文字的状态栏特效代码
2015/10/31 Javascript
js仿支付宝填写支付密码效果实现多方框输入密码
2016/03/09 Javascript
Angularjs中的事件广播 —全面解析$broadcast,$emit,$on
2016/05/17 Javascript
js字符串截取函数slice、substring和substr的比较
2016/05/17 Javascript
详细谈谈javascript的对象
2016/07/31 Javascript
jQuery实现的兼容性浮动层示例
2016/08/02 Javascript
AngularJS基础 ng-mousemove 指令简单示例
2016/08/02 Javascript
深入探究angular2 UI组件之primeNG用法
2017/07/26 Javascript
利用node.js+mongodb如何搭建一个简单登录注册的功能详解
2017/07/30 Javascript
js实现轮播图效果 纯js实现图片自动切换
2020/08/09 Javascript
Python中装饰器的一个妙用
2015/02/08 Python
Python使用turtule画五角星的方法
2015/07/09 Python
pytz格式化北京时间多出6分钟问题的解决方法
2019/06/21 Python
在django中,关于session的通用设置方法
2019/08/06 Python
centos7之Python3.74安装教程
2019/08/15 Python
在Python中画图(基于Jupyter notebook的魔法函数)
2019/10/28 Python
selenium+headless chrome爬虫的实现示例
2021/01/08 Python
亚马逊印度站:Amazon.in
2017/10/15 全球购物
美国儿童珠宝在线零售商:Loveivy
2019/05/22 全球购物
检察官就职演讲稿
2014/01/13 职场文书
科研先进个人典型材料
2014/01/31 职场文书
校庆口号
2014/06/20 职场文书
2014年生产管理工作总结
2014/12/23 职场文书
离婚撤诉申请书范本
2015/05/18 职场文书
《折线统计图》教学反思
2016/02/22 职场文书
2019通用版劳动合同范本!
2019/07/11 职场文书
vmware虚拟机打不开vmx文件怎么办 ?vmware虚拟机vmx文件打开方法
2022/04/08 数码科技