python更新zip文件中文件


#更新zip文件中某一個文件
import
os import shutil import tempfile import zipfile from rat_tool.pack import * toolpath= os.getcwd()+"/tool" smalipath=os.path.join( toolpath,"smali.jar") def updateZip(zipname, filename, data): tmpfd, tmpname = tempfile.mkstemp(dir=os.path.dirname(zipname)) os.close(tmpfd) with zipfile.ZipFile(zipname, 'r') as zin: with zipfile.ZipFile(tmpname, 'w') as zout: zout.comment = zin.comment for item in zin.infolist(): if item.filename != filename: zout.writestr(item, zin.read(item.filename)) os.remove(zipname) os.rename(tmpname, zipname) with zipfile.ZipFile(zipname, mode='a', compression=zipfile.ZIP_DEFLATED) as zf: zf.writestr(filename, data)

使用:

#----更新apk文件中的classes3.dex文件------------------------------------------------------------------
def main():
    #將修改后的smali文件重新打包成dex,替換原來包中dex
    indir=r"D:\pa\apk\haoyishen\smali_classes3"
    outfile=r"D:\pa\apk\classes3.dex"
    #smali(indir, outfile)
    tempzip = r"D:\pa\apk\haoyishenbd.apk"
    
    buff=open(outfile,"rb").read()
    #updateZip(tempzip, "classes3.dex", buff)    
    
    signapk(tempzip, tempzip)
    

    print"111"

if __name__ == '__main__':
    main()

 原創:http://www.cnblogs.com/fply/p/8391070.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM