python学习笔记之zipfile模块

为什么学习:

  在做自动化测试平台的apk上传功能部分时候,涉及到apk上传后提取apk的icon图标,通过aapt解析apk,获取对应icon在apk中的地址,通过python的zipfile模块来解压缩提取到指定的icon的图标

zipfile模块的用途:

  zipfile模块是用来做zip格式编码的压缩和解压缩的,zipfile有两个重要的类:ZipFile 创建和读取zip文件 ZipInfo是存储zip文件的每个文件的信息的

读取zip文件:

 

 1 import zipfile
 2 
 3 #默认模式r,读
 4 zip = zipfile.ZipFile("bb,zip")
 5 #返回所有文件夹和文件
 6 print(zip.namelist())
 7 #返回该zip的文件名
 8 print(zip.filename)
 9 
10 #压缩文件
11 zip_info = zip.getinfo('bb/aa.txt')
12 #原来文件大小
13 print(zip_info.file_size)
14 #返回原来文件的大小
15 print(zip_info,compress_size)
16 #读取压缩文件中内容 默认是字节模式
17 a = zip.read('bb/cc.txt').decode('utf-8')
18 print(a)

运用到平台中的代码

aapt 对应apk 提取icon参数 取到对应的icon在apk压缩包中的路径

zip = zipfile.ZipFile(apkFilePath)
iconData = zip.read(IconPath)

with open(saveIconPath,'wb') as IconFile:
    IconFile.write(iconData)

zip.close()

对应apk中的icon信息存储到了对应的路径位置

猜你喜欢

转载自www.cnblogs.com/newliu/p/9164543.html