Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用flask将多个数据帧作为csv返回_Python_Python 3.x_Pandas_Csv_Flask - Fatal编程技术网

Python 使用flask将多个数据帧作为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

我有多个数据帧,我想使用flask返回多个可下载的CSV文件

我尝试了以下代码,但它只能返回一个可下载的CSV文件

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文件试过了,效果很好。非常感谢。