在flask web项目中添加导出excel的功能,要解决下面几个问题:

  1. 在内存中生成数据,不用临时文件

  2. 返回二进制数据,作为附件让客户端下载

  3. 为excel单元格添加超链接、设置宽度等

  1. 在内存中生成数据,不用临时文件

import xlsxwriter
import StringIO
output = StringIO.StringIO()
workbook = xlsxwriter.Workbook(output, {'in_memory': True})

使用StringIO可以达到目的

2. 返回二进制数据,作为附件让客户端下载

workbook.close()
output.seek(0)
return send_file(output, mimetype="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", as_p_w_upload=True, p_w_upload_filename='file.xlsx')

几个关键点:注意close() 不然数据好像不会flush到output中;用flask.send_file

3. 为excel单元格添加超链接、设置宽度等

worksheet.write_row  添加行
worksheet.write_url  设置超链接
worksheet.set_column(4, 4, width=60)  设置宽度

Happy coding to you (^_^)

转载于:https://blog.51cto.com/waynecui/1744177

python xlsxwriter 在 flask 中的使用相关推荐

  1. python web开发-flask中日志的使用

    Flask使用日志记录的方式: 初始化flask应用实例 在flask中使用logger,需要初始化一个flask的应用 app = Flask(__name__) 2. 调用logger 直接调用l ...

  2. python flask教程百度云,Python Web框架Flask中使用百度云存储BCS实例

    对于部署在百度应用引擎BAE上的项目,使用百度云存储BCS(Baidu Cloud Storage)是不错的存储方案. 百度云存储已有Python SDK,对它进行简单封装后,就可以直接在Flask中 ...

  3. 【Python开发】Flask中的单点登录解决方案

    Flask中的单点登录解决方案 1.SSO 和 CAS 单点登录(Single Sign On,SSO)就是通过用户的一次性鉴别登录.当用户在身份认证服务器上登录一次以后,即可获得访问单点登录系统中其 ...

  4. python web开发-flask中response,cookies,session对象使用详解

    Response响应对象: 当一个web请求被服务器处理完后,会返回用户请求的响应,这时候就要用到响应对象,根据响应给用户的形式不同,响应对象有以下几种处理方式 如果返回的是一个合法的响应对象,它会从 ...

  5. python web开发-flask中消息闪现flash的应用

    Flash中的消息闪现,在官方的解释是用来给用户做出反馈.不过实际上这个功能只是一个记录消息的方法,在某一个请求中记录消息,在下一个请求中获取消息,然后做相应的处理,也就是说flask只存在于两个相邻 ...

  6. flask中的信号机制

    2019独角兽企业重金招聘Python工程师标准>>> flask中信号机制 Flask信号允许特定的发送端通知订阅者发生了什么.既然知道发生了什么,那我们可以知道接下来该做什么了. ...

  7. flask中的可拨插视图

    2019独角兽企业重金招聘Python工程师标准>>> flask中的可拨插视图主要是为了代码的复用. 可拨插视图其实是一个类,需要继承flask.views.View类,必须实现d ...

  8. python flask 表单数据输出_将数据从HTML表单发送到Flask中的Python脚本

    我的Python脚本中有下面的代码: def cmd_wui(argv, path_to_tx): """Run a web UI.""" ...

  9. python返回json数据_python和flask中返回JSON数据的方法

    在python中可以使用json将数据格式化为JSON格式: 1.将字典转换成JSON数据格式: s=['张三','年龄','姓名'] t={} t['data']=s return json.dum ...

最新文章

  1. 【Android 逆向】x86 CPU 架构体系 ( 堆内存 | 栈内存 | 函数调用 )
  2. 解决三星 BIOS 模式没有 Fast Bios Mode选项 U盘动项问题
  3. Linux内核模块学习笔记(转载)
  4. 博客开通了....激动 呵呵
  5. 华为笔记本Win11更新时由于驱动问题引起蓝牙鼠标经常断开问题解决方法
  6. Apollo进阶课程㉕丨Apollo规划技术详解——Optimization Inside Motion Planning
  7. Eclipse用法和技巧十五:自动添加未实现方法1
  8. HighCharts:设置饼图不可点击选择
  9. 穿越机用途和机架尺寸
  10. sumifs两个求和列如何计算_「sumifs」多条件求和函数Sumifs的用法 - seo实验室
  11. 河南初中计算机考试2028,沾沾喜气!河南28名考生被清北提前录取,竟有27人来自一所中学...
  12. 孟婆汤传说!!!感人至极!
  13. 无线物理层安全技术的研究进展
  14. php导出页面为pdf文件大小,php用TCPDF导出PDF文件
  15. 什么是Microsoft Wi-Fi,它将对您有影响吗?
  16. Java导入Excel数据
  17. velocity模板_使用Velocity进行客户端和服务器端模板
  18. Spring源码之@Lazy和预实例化
  19. Bugku -分析-合集
  20. 实用Excel技巧分享:快速整理考勤数据!

热门文章

  1. B站开源动漫画质修复模型,超分辨率无杂线无伪影,还是二次元最懂二次元
  2. 姚班大神陈立杰最新动向:MIT毕业后将进入诺奖摇篮,成为UC伯克利Miller研究员...
  3. 中国队刷新知识图谱“世界杯”,但点开冠军团队一看,我愣住了
  4. 刚盈利的DeepMind收购MuJoCo:转手开源,所有人免费用
  5. 双方互GAN,不如来试试群体博弈?更快更强更自由 | ICLR 2021
  6. 微信小程序之可滚动视图容器组件 scroll-view
  7. Kotlin教程(九)泛型
  8. 王甲佳全息营销系列03-离散集聚式地方机构建设与全息营销活动设计实践
  9. 【UEditor】关于导入ueditor-1.1.3.jar的问题---
  10. 为何大多数人做出来的图表只是一坨屎?