在我的airflow任务中,我在airflow dag中使用open()
方法创建一个文件,并在其中写入记录。然后在同一任务中用邮件发送。它会自动删除还是会存在于dag中?
filename = to_report_name(context)+'_'+currentNextRunTime.strftime('%m.%d.%Y_%H-%M')+'_'+currentNextRunTime.tzname()+'.'+extension.lower()
with open(filename, "w+b") as file:
file.write(download_response.content)
print(file.name)
send_report(context,file)
文件不会自动删除。您执行的代码是纯Python。如果您希望在操作完成后删除文件,则使用tempfile模块,该模块表示文件关闭后将被删除。示例:
import tempfile, os
with tempfile.NamedTemporaryFile() as file:
os.rename(file.name, '/tmp/my_custom_name.txt') # use this if you want to rename the file
file.write(...)