使用Flask下载动态生成的Excel文件

使用Flask下载动态生成的Excel文件

使用Flask框架来写网页程序,有时候需要下载文件,如何处理呢?本文将介绍如何来动态生成并下载Excel文件。

生成文件内容。

生成Excel文件可以使用xlrd库或都xlsxwriter库来生成。本文采用xlsxwriter来生成,主要代码如下:

import io
from xlsxwriter import *

def create_workbook():    
       fp=io.BytesIO()
       book=WorkBook(fp)
       sheet=book.add_worksheet('smaple sheet')
       sheet.write('A1','This is a test.')
       book.close()
       return fp

下载文件

def dowload():
       fp=create_workbook() 
       return send_file(fp,attachment_filename='abc.xlsx',as_attachment=True)

注意事项: attachment_filename 必须使用Latin-1编码,否则会报错。

你可能感兴趣的:(使用Flask下载动态生成的Excel文件)