tarfile.open () не извлекает в правильный путь к каталогу - PullRequest
1 голос
/ 23 января 2020

Я пытаюсь извлечь все из файла tar.gz в тот же каталог. Следующий код работает для извлечения всего, но файлы хранятся в рабочем каталоге вместо пути, который я ввел как имя.

import tarfile
zip_rw_data = r"P:\Lehmann\Test_Python_Project\RW_data.tar.gz"
tar = tarfile.open(name=zip_rw_data, mode='r')
tar.extractall()
tar.close()

Как мне убедиться, что извлеченные файлы сохранены в пути каталога, где Мне они нужны? Я пытался сделать это целую вечность, я действительно не понимаю, почему это не работает.

Ответы [ 2 ]

2 голосов
/ 23 января 2020

Вы должны использовать:

import tarfile
zip_rw_data = r"P:\Lehmann\Test_Python_Project\RW_data.tar.gz"
tar = tarfile.open(name=zip_rw_data, mode='r')
tar.extractall(path=r"P:\Lehmann\Test_Python_Project")
tar.close()
0 голосов
/ 23 января 2020

Вы можете попробовать использовать shutil.unpack_archive

def extract_all(archives, extract_path):
    for filename in archives:
        shutil.unpack_archive(filename, extract_path)
...