Pythonでrarファイルを解凍する

rarfileライブラリを利用

import rarfile
 
rar_filepath = r"c:\arch\data.rar"
output_dir = r"c:\tmp"

rf = rarfile.RarFile(rar_filepath,output_dir)

for arch_file in rf.infolist():
    rf.extract(arch_file.filename, output_dir)
  • infolist()でファイル情報リストを取得。 ファイル名だけであればnamelist()を利用
  • extractallですべて、extractで指定ファイルの解凍が可能。
  • optionで出力先を指定することで、そこから書庫内構成に基づいて解凍(下位ディレクトリは自動作成)
参考

rarfile API documentation — RarFile documentation