ユーザ用ツール

サイト用ツール


python:extract_and_compress

ファイルの圧縮と解凍

ZIPファイルの解凍

zipファイルを解凍するにはzipfileモジュールを使用する。 流れは

  1. with でzipファイルを読み取り専用で開く。
  2. infolist()で中のデータのリストを取得する。
  3. リストでループし、それぞれのファイルを指定してターゲットのディレクトリに解凍する。
target_dir = "ファイルを解凍したいディレクトリ"
try:
    with zipfile.ZipFile(zip_dst, 'r') as zip_ref:
        for info in zip_ref.infolist():
            info.filename = info.filename.encode('cp437').decode('cp932')
            zip_ref.extract(info, target_dir, pwd=password.encode())
            print(f'ファイル=>{info}')
except zipfile.BadZipFile:
    print("不正なZIPファイル")
except RuntimeError as e:
    print(f"解凍エラー:{e}")

gzipファイルの解凍

# ワークフォルダにあるgzipファイルを解凍する。
input_file_name = target_path.joinpath("input.txt.gz")
output_file_name = target_path.joinpath(f"output.txt")
 
with gzip.open(input_file_name, 'rb') as f_in:
    with open(output_file_name, "wb") as f_out:
        f_out.writelines(f_in)
python/extract_and_compress.txt · 最終更新: 2025/01/22 18:18 by mikoto