Я работаю над скриптом Python, который должен обрабатывать тарбол и выводить новый, пытаясь сохранить формат оригинала. Таким образом, я ищу способ поиска метода сжатия, используемого в открытом архиве, чтобы открыть новый файл с таким же сжатием.
AFAICS TarFile
класс не предоставляет общедоступного интерфейса для непосредственного получения необходимой информации. И я хотел бы избежать чтения файла независимо от модуля tarfile.
В настоящее время я рассматриваю поиск класса базового файлового объекта (t.fileobj.__class__
) или пытаюсь открыть входной файл во всех возможных режимах и выбрать правильный формат, в зависимости от того, какой из них успешен.