Python: Extract using tarfile but ignoring directories

meteoritepanama picture meteoritepanama · Dec 6, 2011 · Viewed 11.6k times · Source

If I have a .tar file with a file '/path/to/file.txt', is there a way (in Python) to extract the file to a specified directory without recreating the directory '/path/to'?

Answer

Larry Cai picture Larry Cai · May 9, 2013

I meet this problem as well, and list the complete example based on ekhumoro's answer

import os, tarfile
output_dir = "."
tar = tarfile.open(tar_file)
for member in tar.getmembers():
  if member.isreg():  # skip if the TarInfo is not files
    member.name = os.path.basename(member.name) # remove the path by reset it
    tar.extract(member,output_dir) # extract