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的更多相关文章

  1. flask使用tablib导出excel数据表

    在网页中常常有导出数据的需求,尤其是一下管理类平台.在flask中要导出excel数据表,通常可以使用xlwt库,创建文件并逐行写入数据,但是使用起来总是感觉很麻烦.tablib库相对操作更加方便. ...

  2. axios导出 excel

    this.axios({ methods: 'get', url: url, responseType: 'blob' }).then(res => { const blob = new Blo ...

  3. 基于Vue + axios + WebApi + NPOI导出Excel文件

    一.前言 项目中前端采用的Element UI 框架, 远程数据请求,使用的是axios,后端接口框架采用的asp.net webapi,数据导出成Excel采用NPOI组件.其业务场景,主要是列表页 ...

  4. 前端根据后端返回的数据流导出excel

    首先在utils.js里面声明exportMethod函数,该函数的作用是通过发axios post请求后端导出接口,请求成功后: 1. 在成功函数里面先新建一个a标签: const link = d ...

  5. Vue + axios + SpringBoot 2实现导出Excel

    Vue + axios + SpringBoot 2实现导出Excel 1. 前端js代码-发送Http请求 /** * 文件下载 * @param url 下载地址 * @param fileNam ...

  6. 使用PHPExcel导入导出excel格式文件

    使用PHPExcel导入导出excel格式文件  作者:zccst  因为导出使用较多,以下是导出实现过程.  第一步,将PHPExcel的源码拷贝到项目的lib下  文件包含:PHPExcel.ph ...

  7. vue中导出Excel表格

    项目中我们可能会碰到导出Excel文件的需求,一般后台管理系统中居多,将table中展示的数据导出保存到本地.当然我们也可以通过一些处理来修改要导出的数据格式,具体需求具体对待. 1.首先我们需要安装 ...

  8. Vue中导出Excel表格方法

    本文记录一下在Vue中实现导出Excel表格的做法.参考度娘上各篇博客,最后实现功能 Excel表格,我的后端返回的是数据流,然后文件名是放进了content-disposition中,前端进行获取. ...

  9. Vue通过Blob对象实现导出Excel功能

    不同的项目有不同的导出需求,有些只导出当前所显示结果页面的表格进入excel,这个时候就有很多插件,比如vue-json-excel或者是Blob.js+Export2Excel.js来实现导出Exc ...

  10. python导入和导出excel,以文件流形式返回前端

    一.导入excel 1. 安装依赖包 pip install xlrd 2. 读取excel getColIndex(colList:list,colName:str): try: return co ...

随机推荐

  1. 百度网盘(百度云)SVIP超级会员共享账号每日更新(2024.01.13)

    一.百度网盘SVIP超级会员共享账号 可能很多人不懂这个共享账号是什么意思,小编在这里给大家做一下解答. 我们多知道百度网盘很大的用处就是类似U盘,不同的人把文件上传到百度网盘,别人可以直接下载,避免 ...

  2. blender 3D 汽车模型下载

    前言 因为之前需要模拟摄像头拍摄汽车车牌,从各种途径下载了一些blender 3D 汽车模型,现将模型分享出来,如有需要,直接去最后面下载地址下载即可 目前已经车型40多款 车型图 70年代Porsc ...

  3. [转帖]各个版本Windows系统中自带的.NET Framework版本

    ① Windows Server : Windows Server版本 自带的.NET Framework 版本 Windows Server 2022 .NET Framework 4.8 Wind ...

  4. [转帖]加速拥抱支持开源生态 | OceanBase 开源版3.1.1正式发布

    https://www.oceanbase.com/news/accelerated-embrace-and-support-of-open-source-ecosystem-oceanbase-op ...

  5. [转帖]配置ftp连接对象存储bucket子目录的方法

    https://developer.jdcloud.com/article/1838 配置ftp连接对象存储bucket子目录的方法  京东云技术交付部  2021-01-27 IP归属:未知 441 ...

  6. OpenEuler2203使用rpm方式安装Oracle19c的过程

    OpenEuler2203使用rpm方式安装Oracle19c的过程 安装介质 oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm oracle-d ...

  7. Widows 关闭 Defender的方法

    Study From MS reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender" /v ...

  8. redis 6源码解析之 dict

    edis源码的dict.c主要实现了基于hash表的操作,如增删改查,对哈希表大小的扩容和缩容,以及对哈希表的rehash和增量rehash等.在源码的dictScan函数中,非常巧妙精美地实现了对哈 ...

  9. echarts设置暂无数据

    场景描述 我们在项目中,很多时候都会使用echarts进行数据展示. 当没有数据的时候,echarts的展示就会特别的难看. 这个时候我们就会优化界面的显示,在echarts中展示暂无数据. 有很多中 ...

  10. elementui出现展开后子菜单宽度多出1px问题

    添加 就可以解决了 .el-menu { border-right-width: 0; } <template> <div class="compen-left-men&q ...