python使用7z解压apk包的方法


Posted in Python onApril 18, 2015

本文实例讲述了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 相关文章推荐
利用python打印出菱形、三角形以及矩形的方法实例
Aug 08 Python
TensorFlow实现非线性支持向量机的实现方法
Apr 28 Python
Python for循环生成列表的实例
Jun 15 Python
python使用rpc框架gRPC的方法
Aug 24 Python
漂亮的Django Markdown富文本app插件的实现
Jan 02 Python
python3字符串操作总结
Jul 24 Python
解决python 3 urllib 没有 urlencode 属性的问题
Aug 22 Python
python 实现PIL模块在图片画线写字
May 16 Python
Django中的AutoField字段使用
May 18 Python
Python实现ElGamal加密算法的示例代码
Jun 19 Python
Scrapy实现模拟登录的示例代码
Feb 21 Python
python如何为list实现find方法
May 30 Python
python使用装饰器和线程限制函数执行时间的方法
Apr 18 #Python
python使用multiprocessing模块实现带回调函数的异步调用方法
Apr 18 #Python
python对指定目录下文件进行批量重命名的方法
Apr 18 #Python
python开启多个子进程并行运行的方法
Apr 18 #Python
C#返回当前系统所有可用驱动器符号的方法
Apr 18 #Python
python关闭windows进程的方法
Apr 18 #Python
python使用Queue在多个子进程间交换数据的方法
Apr 18 #Python
You might like
Discuz! Passport 通行证整合
2008/03/27 PHP
php更改目录及子目录下所有的文件后缀的代码
2010/09/24 PHP
php5.5新数组函数array_column使用
2013/07/08 PHP
php中异常处理方法小结
2015/01/09 PHP
深入了解PHP中的Array数组和foreach
2016/11/06 PHP
php pdo操作数据库示例
2017/03/10 PHP
redis+php实现微博(一)注册与登录功能详解
2019/09/23 PHP
Js操作树节点自动折叠展开的几种方法
2014/05/05 Javascript
js获取及修改网页背景色和字体色的方法
2015/12/29 Javascript
详解Bootstrap按钮
2016/01/04 Javascript
实例详解AngularJS实现无限级联动菜单
2016/01/15 Javascript
深入理解JavaScript中为什么string可以拥有方法
2016/05/24 Javascript
JavaScript实现水平进度条拖拽效果
2017/01/18 Javascript
Vue单文件组件的如何使用方式介绍
2017/07/28 Javascript
微信小程序实现写入读取缓存详解
2019/08/30 Javascript
jquery实现图片无缝滚动 蒙版遮蔽效果
2020/01/11 jQuery
浅谈Vue3.0新版API之composition-api入坑指南
2020/04/30 Javascript
vue自定义指令限制输入框输入值的步骤与完整代码
2020/08/30 Javascript
详解JavaScript 事件流
2020/09/02 Javascript
VUE-ElementUI 自定义Loading图操作
2020/11/11 Javascript
[01:50]WODOTA制作 DOTA2中文宣传片《HERO》
2013/04/28 DOTA
python&MongoDB爬取图书馆借阅记录
2016/02/05 Python
python3 模拟登录v2ex实例讲解
2017/07/13 Python
为什么入门大数据选择Python而不是Java?
2018/03/07 Python
flask中过滤器的使用详解
2018/08/01 Python
python进阶之多线程对同一个全局变量的处理方法
2018/11/09 Python
Canvas波浪花环的示例代码
2020/08/21 HTML / CSS
FitFlop澳大利亚官网:英国符合人体工学的鞋类品牌
2017/06/05 全球购物
给海归自荐信的建议
2013/12/13 职场文书
电厂厂长岗位职责
2014/01/02 职场文书
市场部管理制度
2014/02/02 职场文书
遥感技术与仪器求职信
2014/02/22 职场文书
管理人员岗位职责
2015/02/14 职场文书
综合办公室主任岗位职责
2015/04/01 职场文书
大学感恩节活动总结
2015/05/05 职场文书
MySQL中datetime时间字段的四舍五入操作
2021/10/05 MySQL