0
2

More than 3 years have passed since last update.

zipfileを使って複数のzipファイルをまとめて解凍し、それぞれのフォルダに保存するためのpythonコード

Posted at

大量にダウンロードしたzipファイルを一気に解凍するという場面が時々あったので、メモとして保存します。

import zipfile
import os

path = 'zipファイルが格納されているフォルダのパス'
output = '解凍したデータ保存先のパス'

#ファイル名を取得
files = os.listdir(path)

#ひとつずつ解凍
for i in files:
    #zipファイル名のフォルダがなければ新しく作る
    if not os.path.isdir(output + i):
        os.mkdir(output + i)
    #解凍
    zf = zipfile.ZipFile(path + i)
    zf.extractall(output + i)

これで保存先にそれぞれのファイル名のフォルダができ、解凍したデータが保存されました。

最初にやってしまったミスとして、zipファイルを格納しているディレクトリにファイルでないもの(保存先にしようとしていた空のフォルダ)を置いてしまったことが原因のエラーがあり、zf.extractallが途中で止まってしまいました。
その他、listdirで取得できるのはそのディレクトリにおける名前のみであって完全なパスではないなど、短くて簡単なコードですが個人的にうっかりミスを起こしやすいものだったので記録しておきたいと思いました。

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2