【发布时间】:2022-12-13 06:35:45
【问题描述】:
我想从 Glue 上传 2 个文件到我的 S3,第一个文件成功上传到 s3 而不是第二个,这是代码 sn-p :
def backup_report(filename):
with io.BytesIO() as output:
with pd.ExcelWriter(output, engine='xlsxwriter') as writer:
# ------- insert metrics that x need calculation -------
op_AdReq_fnl.to_excel(writer, sheet_name='weekly', index=True, startcol=0, startrow=2, header=True)
op_dirt_imps.to_excel(writer, sheet_name='weekly', index=True, startcol=0, startrow=8, header=False)
op_prog_imps.to_excel(writer, sheet_name='weekly', index=True, startcol=0, startrow=12, header=False)
op_hse_imps.to_excel(writer, sheet_name='weekly', index=True, startcol=0, startrow=16, header=False)
op_FillRt_fnl.to_excel(writer, sheet_name='weekly', index=True, startcol=0, startrow=29, header=False)
op_dirt_rvn.to_excel(writer, sheet_name='weekly', index=True, startcol=0, startrow=57, header=False)
op_prog_rvn.to_excel(writer, sheet_name='weekly', index=True, startcol=0, startrow=61, header=False)
workbook = writer.book
worksheet = writer.sheets['weekly']
writer.save()
output.seek(0)
#Upload files
s3.upload_fileobj(output, args['bucket_name'] , args['key_name'] + 'file1_{0}_{1}.xlsx'.format(rpt_name_start, rpt_name_end))
s3.upload_fileobj(output, args['bucket_name'] , args['key_name'] + 'file1_backup.xlsx')
writer.close()
有什么办法可以做到这一点?谢谢!
【问题讨论】:
-
您正在对一个已关闭的文件调用
writer.save()和output.seek(0)。 -
抱歉,介意多解释一下。
标签: python pandas amazon-web-services amazon-s3 aws-glue