【发布时间】:2015-12-13 00:29:19
【问题描述】:
我有这个用于流式传输文本文件的功能:
def txt_response(filename, iterator):
if not filename.endswith('.txt'):
filename += '.txt'
filename = filename.format(date=str(datetime.date.today()).replace(' ', '_'))
response = Response((_.encode('utf-8')+'\r\n' for _ in iterator), mimetype='text/txt')
response.headers['Content-Disposition'] = 'attachment; filename={filename}'.format(filename=filename)
return response
我正在研究如何以类似的方式流式传输 CSV。 This page 给出了一个例子,但我希望使用 CSV 模块。
我可以使用StringIO 并为每一行创建一个新的“文件”和 CSV 写入器,但这似乎效率很低。有没有更好的办法?
【问题讨论】:
标签: python csv flask streaming