This article mainly introduces how to decompress the apk package using 7z in python. it involves Python shell command calling techniques and is very useful, for more information about how to decompress the apk package in python using 7z, see the following example. Share it with you for your reference. The details are as follows:
This code uses shell to call 7z to decompress the apk package.
def run_shell(command, mayFreeze=False): def check_retcode(retcode, cmd): if 0 != retcode: print >> sys.stderr, 'err executing ' + cmd + ':', retcode sys.exit(retcode) def read_close(f): f.seek(0) d = f.read() f.close() return d #print >> sys.stderr, '-- Executing', command if mayFreeze: tempout, temperr = tempfile.TemporaryFile(), tempfile.TemporaryFile() #open(os.devnull, 'w') p = subprocess.Popen(command, stdout=tempout, stderr=temperr) p.wait() output, errout = read_close(tempout), read_close(temperr) else: p=subprocess.Popen(command,stdout=subprocess.PIPE,stderr=subprocess.PIPE) output = p.stdout.read() p.wait() errout = p.stderr.read() p.stdout.close() p.stderr.close() #check_retcode(p.returncode, command) return (output.strip(), errout.strip())#z7 is the full path to 7z.exe#at times you have to encode the command into GBK/UTF8run_shell(u'{0} -y -o"{1}" {2} x "{3}"'.format(z7, tempdir, icon, apk))shutil.copy(u'{0}/{1}'.format(tempdir,os.path.basename(icon)),dst_path)
I hope this article will help you with Python programming.