python使用7z解压apk包的方法
更新时间:2015年04月18日 14:30:39 作者:work24
这篇文章主要介绍了python使用7z解压apk包的方法,涉及Python的shell命令调用技巧,非常具有实用价值,需要的朋友可以参考下
本文实例讲述了python使用7z解压apk包的方法。分享给大家供大家参考。具体如下:
这段代码通过shell调用7z对apk包进行解压缩
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程序设计有所帮助。
相关文章
Python之tkinter面板PanedWindow的使用
这篇文章主要介绍了Python之tkinter面板PanedWindow的使用及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-05-05
python数据可视化使用pyfinance分析证券收益示例详解
这篇文章主要为大家介绍了python数据可视化使用pyfinance分析证券收益的示例详解及pyfinance中returns模块的应用,有需要的朋友可以借鉴参考下,希望能够有所帮助2021-11-11


最新评论