Python 使用flask将多个数据帧作为csv返回
我有多个数据帧,我想使用flask返回多个可下载的CSV文件 我尝试了以下代码,但它只能返回一个可下载的CSV文件Python 使用flask将多个数据帧作为csv返回,python,python-3.x,pandas,csv,flask,Python,Python 3.x,Pandas,Csv,Flask,我有多个数据帧,我想使用flask返回多个可下载的CSV文件 我尝试了以下代码,但它只能返回一个可下载的CSV文件 resp = make_response(df.to_csv()) resp.headers["Content-Disposition"] = "attachment; filename=export.csv" resp.headers["Content-Type"] = "text/csv" retu
resp = make_response(df.to_csv())
resp.headers["Content-Disposition"] = "attachment; filename=export.csv"
resp.headers["Content-Type"] = "text/csv"
return resp
我试图返回多个响应(returnresp1,resp2
),但出现以下错误:
TypeError: %d format: a number is required, not Response
任何帮助都将不胜感激,谢谢 我得到了我的答案,实际上,仅使用flask无法一次返回所有文件,因此我制作了一个包含所有CSV的zip文件,然后返回了它
import zipfile
with zipfile.ZipFile('main_code/output.zip', 'w') as csv_zip:
csv_zip.writestr("data1.csv", data1.to_csv())
csv_zip.writestr("data2.csv", data2.to_csv())
return send_file('output.zip',
mimetype='zip',
attachment_filename='output.zip',
as_attachment=True)
你不能只用烧瓶。要么压缩文件,然后返回一个文件。或者你需要编写前端javascript代码来下载它们。@Tristan我用zip文件试过了,效果很好。非常感谢。