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获取各操作系统硬件信息的方法
Jun 03 Python
详解Python3中的Sequence type的使用
Aug 01 Python
深入理解python中函数传递参数是值传递还是引用传递
Nov 07 Python
一文带你了解Python中的字符串是什么
Nov 20 Python
pycharm debug功能实现跳到循环末尾的方法
Nov 29 Python
pycharm中使用anaconda部署python环境的方法步骤
Dec 19 Python
python使用zip将list转为json的方法
Dec 31 Python
使用python3实现操作串口详解
Jan 01 Python
解决Jupyter notebook中.py与.ipynb文件的import问题
Apr 21 Python
详解Python 中的容器 collections
Aug 17 Python
Pycharm学生免费专业版安装教程的方法步骤
Sep 24 Python
在Pycharm中安装Pandas库方法(简单易懂)
Feb 20 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
为php4加入动态flash文件的生成的支持
2006/10/09 PHP
ThinkPHP3.1新特性之G方法的使用
2014/06/19 PHP
在Yii2中使用Pjax导致Yii2内联脚本载入失败的原因分析
2016/03/06 PHP
Yii2实现让关联字段支持搜索功能的方法
2016/08/10 PHP
TP5框架实现上传多张图片的方法分析
2020/03/29 PHP
div浮层,滚动条移动,位置保持不变的4种方法汇总
2013/12/11 Javascript
js实现表单多按钮提交action的处理方法
2015/10/24 Javascript
JS实现页面进入和返回定位到具体位置
2016/12/08 Javascript
基于JavaScript实现类名的添加与移除
2017/04/23 Javascript
微信JSSDK调用微信扫一扫功能的方法
2017/07/25 Javascript
Angular移动端页面input无法输入的解决方法
2017/11/14 Javascript
Javascript 编码约定(编码规范)
2018/03/11 Javascript
Vue写一个简单的倒计时按钮功能
2018/04/20 Javascript
ES6 系列之 Generator 的自动执行的方法示例
2018/10/19 Javascript
Layui弹出层 加载 做编辑页面的方法
2019/09/16 Javascript
JS运算符优先级与表达式示例详解
2020/09/04 Javascript
JavaScript中的执行环境和作用域链
2020/09/04 Javascript
Python修改Excel数据的实例代码
2013/11/01 Python
用virtualenv建立多个Python独立虚拟开发环境
2017/07/06 Python
pandas将numpy数组写入到csv的实例
2018/07/04 Python
python中将正则过滤的内容输出写入到文件中的实例
2018/10/21 Python
Pyinstaller打包Scrapy项目的实现步骤
2020/09/22 Python
Canvas 文字碰撞检测并抽稀的方法
2019/05/27 HTML / CSS
国际知名军事风格休闲装品牌:Alpha Industries(阿尔法工业)
2017/05/24 全球购物
俄罗斯珠宝市场的领导者之一:Бронницкий ювелир
2019/10/02 全球购物
俄罗斯香水在线商店:AromaCode
2019/12/04 全球购物
博士研究生自我鉴定范文
2013/12/04 职场文书
文秘专业个人求职信
2013/12/22 职场文书
学生党员思想汇报范文
2014/01/09 职场文书
党的群众路线教育实践活动整改落实情况自查报告
2014/10/28 职场文书
2014年电工工作总结
2014/11/20 职场文书
拾金不昧表扬稿大全
2015/05/05 职场文书
孔繁森观后感
2015/06/10 职场文书
2015年成本会计工作总结
2015/10/14 职场文书
奖学金申请书(范文)
2019/08/14 职场文书
从原生JavaScript到React深入理解
2022/07/23 Javascript