Как распаковать файл .xz, содержащий несколько папок / файлов, за один раз?

Я пытаюсь распаковать файл .xz, в котором есть несколько фодеров и файлов. Я неПрямой способ сделать это с помощью модуля lzma. Это то, что яЯ вижу способ распаковки:

In [1]: import lzma

In [2]: f = lzma.decompress("test.tar.xz")
---------------------------------------------------------------------------
error                                     Traceback (most recent call last)
 in ()
----> 1 f = lzma.decompress("test.tar.xz")

error: unknown file format

Существуют ли другие способы распаковать этот файл, чтобы он создал результирующую папку?

Ответы на вопрос(1)

Решение Вопроса
Python 3.3
import tarfile

with tarfile.open('test.tar.xz') as f:
    f.extractall('.')
Python 2.7

НеобходимостьLZMA в Python 2.7

import contextlib
import lzma
import tarfile

with contextlib.closing(lzma.LZMAFile('test.tar.xz')) as xz:
    with tarfile.open(fileobj=xz) as f:
        f.extractall('.')
 falsetru23 окт. 2018 г., 17:15
@ hek2mgl, не могли бы вы опубликовать отдельный вопрос с traceback?
 hek2mgl23 окт. 2018 г., 20:30
@falsetru Я думаю, что ваш ответ говорит об этом.tarfile.open('filename', 'r:xz') Можно'не может быть использован в python2.7. Я надеялся, что это будет возможно, установив модуль lzma. Я должен установить пакеты Python 2.7 через ссылки pip и http: //.../package.tar.xz, и pip напрямую вызывает tarfile.open (), что приводит к неизвестной ошибке сжатия.
 vimal22 июн. 2013 г., 12:41
falsetru, я решил использовать Python 3, так как tarfile имеет встроенную поддержку сжатия xz. Я решил не использовать lzma в Python 2.7. Спасибо :)
 hek2mgl23 окт. 2018 г., 16:05
Это может'все для Python2.7. Я установил pyliblzma и яя все еще получаюunknown compression type 'xz'
 themaninthewoods06 июл. 2017 г., 21:21
Теперь я понимаю, что это не оригинальный вопрос, но, возможно, мой комментарий может помочь кому-то еще, кто совершил ту же ошибку.
 themaninthewoods06 июл. 2017 г., 20:58
Это неу меня в Python 3.6 нет работы со сжатым файлом LZMA с расширением xz. Я думаю, онине обязательно файлы tar? я получилtarfile.ReadError: file could not be opened successfully , Вместо этого я использовал ответ отstackoverflow.com/questions/42079724/….contents = lzma.open('file.xz').read()
 hek2mgl23 окт. 2018 г., 19:58
Не уверен, что это будет по теме на SO. Я'м в процессе расследования. Если я найду что-тодам тебе знать.

Ваш ответ на вопрос