Прошу совета, вообщем то есть tarfile, он отлично все распаковывает кроме тех моментов когда есть не юникод в архиве. Как я понял выходом является использование третьего питона, но может кто знает как побороть это во второй ветке. Или может подскажете какую другую либу которой я смогу нонюникод паковать/распаковать что бы при этом иметь возможность считать прогресс. Пока для получения прогресса пытаюсь использовать конструкцию как пишут в интернетах, но она не работает. Распаковка идет, прогресс идет только в аутпут на экране, в редис соответственно ничего не долетает:
if self.archive_type() == 'tar.gz':
cmd_string = "pv -n "+self.archive_file+" | tar xp -C "+self.target_directory
cmd = subprocess.Popen(cmd_string, shell=True, stdout=subprocess.PIPE)
while True:
line = cmd.stdout.readline()
if line != '':
self.redis_obj.publish('unpack', line.rstrip())
else:
break
Так что нужно либо заставить постить прогресс то что есть, либо как то заставить tarfile работать с нонюникод, либо есть какая другая либа о которой я не знаю, и которая умеет и то и другое. Спасибо.