Я создаю файл, с помощью пандаса, а после отправляю его через фляск, вот код:
@app.route('/download/<string:column_name>')
def download_handler(column_name):
with open('inf.json','r+',encoding='utf8') as f:
data=json.load(f)
if len(data)>0 and column_name in data[list(data.keys())[0]]:
df = pd.DataFrame.from_dict(data, orient='index')
df_column = df[column_name]
dt_column = df['datetime']
result = pd.concat([df_column, dt_column], axis=1)
i=1
while os.path.exists(f'files/{i}'):
i+=1
os.mkdir(f'files/{i}')
result.to_excel(f'files/{i}/{column_name}.xlsx', index=False)
filename=f'files/{i}/{column_name}.xlsx'
А после отправления, я пытаюсь его удалить:
try:
return send_file(filename, as_attachment=True)
finally:
os.remove(filename)
os.rmdir(f'files/{i}')
Но получаю ошибку:
PermissionError: [WinError 32] Процесс не может получить доступ к файлу, так как этот файл занят другим процессом:
Как это исправить? time sleep и open close не помогают.