ユーザー指定のフォルダをユーザー指定の場所にzipファイルとしてバックアップするためのスクリプトを作成しましたが、一度スクリプトを実行することはできますが、スクリプトを再実行してzipファイル名以下のエラーを取得します。以下すでにpythonで閉じられていたzipアーカイブを回避するにはどうすればよいですか?
Attempt to write to ZIP archive that was already closed
Zipファイルのコード:
bkZip = zipfile.ZipFile(backZip, 'w') # Not sure what to say for lines 26 - 31
for dirname, subdirs, files in os.walk(backUp):
bkZip.write(dirname)
for filename in files:
bkZip.write(os.path.join(dirname, filename))
bkZip.close()
私はこれを修正し、助けを少し必要とするかどうかは全くわかりません。
は 'bkZip.close()'は本当にトップレベルのループの内側にインデントされているはずですか?それは明らかに間違っているようですが、あなたの実際のコードの問題の原因ではなく、スタックオーバーフローエディタにコードをコピーした結果かもしれません。その行が本当にそうであれば、(スクリプトを何回実行したかにかかわらず) 'backUp'の場所にサブフォルダがあったときにいつもあなたのバックアップが失敗すると思います。 – Blckknght