У меня есть такой код который собирает архив и отправляет бот но на выходе в боте я получаю то что архив не ворк class BuildBackup(): def __init__(self): self.path=f'data/temp_bot/{unix_time()}_korgi.zip' self.zipf = zipfile.ZipFile(self.path, mode='w', compression=zipfile.ZIP_STORED, allowZip64=True, compresslevel=None, strict_timestamps=True, metadata_encoding=None) for root, dirs, files in os.walk('data/'): for file in files: if file in ['DataBase.db', 'settings.json']: self.zipf.write(os.path.join(root, file)) for root, dirs, files in os.walk('plugins/'): for file in files: if file[-2:] == 'py': self.zipf.write(os.path.join(root, file)) async def close(self): os.remove(self.path) self.zipf.close() async def send_backup(callback): buckup=BuildBackup() document = FSInputFile(buckup.path, chunk_size=100000 , filename='21312.zip') await bot.send_document(cfg.admin_id, document=document) await buckup.close() Python class BuildBackup(): def __init__(self): self.path=f'data/temp_bot/{unix_time()}_korgi.zip' self.zipf = zipfile.ZipFile(self.path, mode='w', compression=zipfile.ZIP_STORED, allowZip64=True, compresslevel=None, strict_timestamps=True, metadata_encoding=None) for root, dirs, files in os.walk('data/'): for file in files: if file in ['DataBase.db', 'settings.json']: self.zipf.write(os.path.join(root, file)) for root, dirs, files in os.walk('plugins/'): for file in files: if file[-2:] == 'py': self.zipf.write(os.path.join(root, file)) async def close(self): os.remove(self.path) self.zipf.close() async def send_backup(callback): buckup=BuildBackup() document = FSInputFile(buckup.path, chunk_size=100000 , filename='21312.zip') await bot.send_document(cfg.admin_id, document=document) await buckup.close()
Попытайся сначала закрыть зип файл, а потом его удалять) Поменяй местами строки 19 и 20, по логике, должно помочь