У меня есть tar-файл, содержащий сжатые tar-файлы. Например:python tarfile рекурсивный экстракт в памяти
[email protected]:~$ tar tf test.tar
File1.tar.gz
File2.tar.gz
File3.tar.gz
File4.tar.gz
tarfile ожидает, что в качестве файла откроется строка. Есть ли вообще передать это файл-объект?
tar = tarfile.open('test.tar', 'r') # Unpack tar
for item in tar:
Bundle=tar.extractfile(item) # Pull out the file
t = tarfile.open(Bundle, "r:gz") # Unpack tar
for tItem in t:
...
Спасибо.
С [ 'tarfile.open'] (https://docs.python.org/3/library/tarfile.html#tarfile.open): _" Если указан fileobj, он используется в качестве альтернативой файловому объекту, открытому в двоичном режиме для имени. Предполагается, что он находится в позиции 0. "_. 'tar.extractfile (fileobj = Bundle, mode =" r: gz ")' –