各位用户为了找寻关于python使用7z解压apk包的方法的资料费劲了很多周折。这里教程网为您整理了关于python使用7z解压apk包的方法的相关资料,仅供查阅,以下为您介绍关于python使用7z解压apk包的方法的详细内容

本文实例讲述了python使用7z解压apk包的方法。分享给大家供大家参考。具体如下:

这段代码通过shell调用7z对apk包进行解压缩

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 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/UTF8 run_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)

希望本文所述对大家的Python程序设计有所帮助。