web-dev-qa-db-ja.com

Zipアーカイブ内のファイルを削除または置換するにはどうすればよいですか?

Pythonでプログラムを作成しています。このプログラムは、ファイルのセットをダウンロードし、zipfileモジュールを使用してアーカイブに配置します。

アーカイブに追加する方法はすでにわかりましたが、アーカイブ内のファイルがすでに存在しているため、上書きする必要がある場合があります。

現在、既存のファイルをアーカイブに追加すると、重複が発生します。

アーカイブ内のファイルを削除する方法を知っている人はいますか?

24
MichaelvdNet

から http://docs.python.org/2/library/zipfile

ZipFile.namelist()
Return a list of archive members by name.

したがって、ファイルに追加してアーカイブ内の既存のメンバーのリストに対してチェック操作を実行する前に、メンバーリストを取得するのは簡単です。

さらに、Zipファイルからの削除はサポートされていません。必要に応じて新しいアーカイブを作成し、既存のファイルをコピーして、削除するファイルを省略する必要があります。

も参照してください

ZipFileモジュールを使用してzipfileからファイルを削除します

15
Andreas Jung