flask+xlswriter+axios导出Excel
flask后端
starttime = request.json.get('starttime')
endtime = request.json.get('endtime')
# 根据时间查询数据库数据
data = Inspector.query.filter(Inspector.Inspect_time >= starttime, Inspector.Inspect_time <= endtime).all()
output = BytesIO()
workbook = xlsxwriter.Workbook(output)
worksheet = workbook.add_worksheet('sheet1')
format = workbook.add_format({'num_format': 'yyyy/m/d h:mm:ss'})
row = 0
col = 0
for i in data:
worksheet.write(row, col, i.Inspect_time)
worksheet.write(row, col+1, i.Machine_room)
worksheet.write(row, col+2, i.Cabinet_num)
worksheet.write(row, col+3, i.Asset_num_old)
worksheet.write(row, col+4, i.Asset_num_new)
worksheet.write(row, col+5, i.Error_info)
worksheet.write(row, col+6, i.Inspector)
row = row + 1
worksheet.set_column('A:A', 20, format)
workbook.close()
output.seek(0)
resp = make_response(output.getvalue())
resp.headers["Content-Disposition"] = "attachment; filename={}.xlsx".format('xjxt')
resp.headers['Content-Type'] = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
return resp
JS代码,指定响应类型"responseType: "blob",否则打开Excel乱码
axios({
responseType: "blob" ,
method: 'post',
url: "/export",
data: {
starttime: t1,
endtime: t2
}
}).then(function(response){
const blob = new Blob([response.data]);
const url = window.URL.createObjectURL(blob)
const a = document.createElement('a')
a.href = url
a.download = 'xjxt.xlsx'
a.click()
window.URL.revokeObjectURL(url)
}).catch(function (error){
console.log(error);
})
flask+xlswriter+axios导出Excel的更多相关文章
- flask使用tablib导出excel数据表
在网页中常常有导出数据的需求,尤其是一下管理类平台.在flask中要导出excel数据表,通常可以使用xlwt库,创建文件并逐行写入数据,但是使用起来总是感觉很麻烦.tablib库相对操作更加方便. ...
- axios导出 excel
this.axios({ methods: 'get', url: url, responseType: 'blob' }).then(res => { const blob = new Blo ...
- 基于Vue + axios + WebApi + NPOI导出Excel文件
一.前言 项目中前端采用的Element UI 框架, 远程数据请求,使用的是axios,后端接口框架采用的asp.net webapi,数据导出成Excel采用NPOI组件.其业务场景,主要是列表页 ...
- 前端根据后端返回的数据流导出excel
首先在utils.js里面声明exportMethod函数,该函数的作用是通过发axios post请求后端导出接口,请求成功后: 1. 在成功函数里面先新建一个a标签: const link = d ...
- Vue + axios + SpringBoot 2实现导出Excel
Vue + axios + SpringBoot 2实现导出Excel 1. 前端js代码-发送Http请求 /** * 文件下载 * @param url 下载地址 * @param fileNam ...
- 使用PHPExcel导入导出excel格式文件
使用PHPExcel导入导出excel格式文件 作者:zccst 因为导出使用较多,以下是导出实现过程. 第一步,将PHPExcel的源码拷贝到项目的lib下 文件包含:PHPExcel.ph ...
- vue中导出Excel表格
项目中我们可能会碰到导出Excel文件的需求,一般后台管理系统中居多,将table中展示的数据导出保存到本地.当然我们也可以通过一些处理来修改要导出的数据格式,具体需求具体对待. 1.首先我们需要安装 ...
- Vue中导出Excel表格方法
本文记录一下在Vue中实现导出Excel表格的做法.参考度娘上各篇博客,最后实现功能 Excel表格,我的后端返回的是数据流,然后文件名是放进了content-disposition中,前端进行获取. ...
- Vue通过Blob对象实现导出Excel功能
不同的项目有不同的导出需求,有些只导出当前所显示结果页面的表格进入excel,这个时候就有很多插件,比如vue-json-excel或者是Blob.js+Export2Excel.js来实现导出Exc ...
- python导入和导出excel,以文件流形式返回前端
一.导入excel 1. 安装依赖包 pip install xlrd 2. 读取excel getColIndex(colList:list,colName:str): try: return co ...
随机推荐
- [转帖]TiFlash 简介
overview TiFlash 是 TiDB HTAP 形态的关键组件,它是 TiKV 的列存扩展,在提供了良好的隔离性的同时,也兼顾了强一致性.列存副本通过 Raft Learner 协议异步复制 ...
- [转帖]Jmeter学习笔记(二十三)——生成HTML性能报告
https://www.cnblogs.com/pachongshangdexuebi/p/11759316.html 有时候我们写性能报告的时候需要一些性能分布图,JMeter是可以生成HTML性能 ...
- [转帖]Linux-find命令报错: missing argument to `-exec'
https://www.cnblogs.com/yeyuzhuanjia/p/17427143.html 报错提示:find: missing argument to `-exec' 今天写一个清理脚 ...
- [转帖]一文解决内核是如何给容器中的进程分配CPU资源的?
https://zhuanlan.zhihu.com/p/615570804 现在很多公司的服务都是跑在容器下,我来问几个容器 CPU 相关的问题,看大家对天天在用的技术是否熟悉. 容器中的核是真 ...
- [转帖]egrep 正则表达式
https://www.cnblogs.com/ordili/p/9395735.html 一.功能 用正则表达式在文件或输入中搜索匹配的字符串,并打印出匹配的行.egrep匹配之前,会删除每行结尾的 ...
- linux 53端口占用的原因
解析 Linux 下 53 端口占用的现象 在 Linux 系统中,端口 53 往往是与域名解析服务(DNS)相关的.本文将详细介绍一个与端口 53 相关的情景,以及如何使用命令行工具来解析和理解这一 ...
- vue中使用refs出现undefined的解决方法
最近遇见一个情况, 在methods:{}中的某个方法, 通过父组件去调用子组件的一个方法:this.$refs.xxx 打印出来的却是undefined? 因为: 是如果在DOM结构中的某个DOM节 ...
- PaddleNLP基于ERNIR3.0文本分类以CAIL2018-SMALL数据集罪名预测任务为例【多标签】
相关项目链接: Paddlenlp之UIE模型实战实体抽取任务[打车数据.快递单] Paddlenlp之UIE分类模型[以情感倾向分析新闻分类为例]含智能标注方案) 应用实践:分类模型大集成者[Pad ...
- 3.3 Windows驱动开发:内核MDL读写进程内存
MDL内存读写是一种通过创建MDL结构体来实现跨进程内存读写的方式.在Windows操作系统中,每个进程都有自己独立的虚拟地址空间,不同进程之间的内存空间是隔离的.因此,要在一个进程中读取或写入另一个 ...
- Python 实现专属字典生成器
编写一个密码生成工具,这里我们使用弱密码与个性化数组组合形成一个定制字典,例如收集用户的姓名,昵称,QQ号手机号等资源,然后通过Python对搜集到的数据与弱密码进行结合,从而定制出属于某个人的专属密 ...