亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

用python解壓分析jar包實例

 更新時間:2020年01月16日 16:57:15   作者:海峰-清歡  
今天小編就為大家分享一篇用python解壓分析jar包實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

寫這個玩意的背景:在u8多渠道打包里,需要分析jar包,并把里面的文件按目錄和類型分別放在root和assets文件夾里,之前師兄都是手動解壓,一個一個文件夾找文件,效率比較低,剛好最近手上的android項目已經(jīng)做完了,就決定寫一個自動化分析jar文件并復(fù)制粘貼到指定文件夾的腳本。

# -*- coding: utf-8 -*-
import os
import shutil
import zipfile
 
count = 1
def getSumDir():
  sumfilelist = os.listdir(os.getcwd())
  for dir in sumfilelist:
    if ".idea" not in dir:
      classify(dir)
 
 
def getlibDir():
  sumfilelist = os.listdir(os.getcwd())
  for dir in sumfilelist:
    if "libs" in dir:
      jieyajar(dir)
 
 
def jieyajar(dir):
  files = os.listdir(dir)
  for jars in files:
    if "jar" in jars:
      zfile = zipfile.ZipFile('libs/' + jars, 'r')
      if not os.path.exists(os.getcwd() + '/jarlog/' + jars):
        os.makedirs(os.getcwd() + '/jarlog/' + jars)
      zfile.extractall(os.getcwd() + '/jarlog/' + jars)
 
      if not os.path.exists(os.getcwd() + '/jars/'):
        os.makedirs(os.getcwd() + '/jars/')
      zfile.extractall(os.getcwd() + '/jars/')
      zfile.close
 
  for file in os.listdir(os.getcwd()):
    if "jars" in file:
      classify(file)
 
 
# def classify(path):
#   if os.path.isfile(path):
#     if ".class" not in path:
#       if "assets" in os.path.dirname(path):
#         if not os.path.exists(os.path.dirname(os.getcwd()) + '/assets/' + os.path.dirname(path)):
#           os.makedirs(os.path.dirname(os.getcwd()) + '/assets/' + os.path.dirname(path))
#         shutil.copy(path, os.path.dirname(os.getcwd()) + '/assets/' + os.path.dirname(path))
#       else:
#         if not os.path.exists(os.path.dirname(os.getcwd())+'/root/'+os.path.dirname(path)):
#          os.makedirs(os.path.dirname(os.getcwd())+'/root/'+os.path.dirname(path))
#         shutil.copy(path,os.path.dirname(os.getcwd())+'/root/'+os.path.dirname(path))
#   else :
#     list = os.listdir(path)
#     for dir in list:
#       classify(path+"/"+dir)
 
def classify(path):
  global count
  if os.path.isfile(path):
    if ".class" not in path:
      if not os.path.exists(os.getcwd() + '/root/' + os.path.dirname(path)):
        os.makedirs(os.getcwd() + '/root/' + os.path.dirname(path))
      shutil.copy(path, os.getcwd() + '/root/' + os.path.dirname(path))
  else:
    if 'assets' in path and count == 1:
      count = count + 1
      shutil.copytree(os.getcwd()+'/'+path, os.getcwd() + '/assets')
    elif 'META-INF' not in path:
      list = os.listdir(path)
      for dir in list:
        classify(path + "/" + dir)
 
 
# getSumDir()
getlibDir()

嗯,主要就是對文件夾和文件的操作。。

以上這篇用python解壓分析jar包實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python獲取、格式化當(dāng)前時間日期的方法

    Python獲取、格式化當(dāng)前時間日期的方法

    在本篇文章里小編給大家整理的是關(guān)于Python獲取、格式化當(dāng)前時間日期的方法,對此有需要的朋友們可以學(xué)習(xí)參考下。
    2020-02-02
  • win32com操作word之Application&Documents接口學(xué)習(xí)

    win32com操作word之Application&Documents接口學(xué)習(xí)

    這篇文章主要為大家介紹了win32com操作word之Application&Documents接口學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-01-01
  • 詳談在flask中使用jsonify和json.dumps的區(qū)別

    詳談在flask中使用jsonify和json.dumps的區(qū)別

    下面小編就為大家分享一篇詳談在flask中使用jsonify和json.dumps的區(qū)別,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • PyCM多類別混淆矩陣分析python庫功能使用探究

    PyCM多類別混淆矩陣分析python庫功能使用探究

    這篇文章主要為大家介紹了python編寫的PyCM多類混淆矩陣庫,用于多類別混淆矩陣分析,幫助用戶從不同角度評價分類模型的表現(xiàn),這些指標(biāo)包括但不限于準(zhǔn)確率、召回率、F1分?jǐn)?shù)、Kappa?統(tǒng)計量等,支持二分類、多分類及多標(biāo)簽分類問題
    2024-01-01
  • Python?NLP開發(fā)之實現(xiàn)聊天機器人

    Python?NLP開發(fā)之實現(xiàn)聊天機器人

    這篇文章主要為大家介紹了Python如何實現(xiàn)聊天機器人,即使用自然語言處理?(NLP)?來幫助用戶通過文本、圖形或語音與?Web?服務(wù)或應(yīng)用進行交互,感興趣的可以了解一下
    2023-05-05
  • Python報錯SyntaxError:unexpected?EOF?while?parsing的解決辦法

    Python報錯SyntaxError:unexpected?EOF?while?parsing的解決辦法

    在運行或編寫一個程序時常會遇到錯誤異常,這時python會給你一個錯誤提示類名,告訴出現(xiàn)了什么樣的問題,下面這篇文章主要給大家介紹了關(guān)于Python報錯SyntaxError:unexpected?EOF?while?parsing的解決辦法,需要的朋友可以參考下
    2022-07-07
  • 解決python使用pd.read_csv()出現(xiàn)錯誤UnicodeDecodeError:?'utf-8'?codec?can't?decode......

    解決python使用pd.read_csv()出現(xiàn)錯誤UnicodeDecodeError:?'utf-8&

    你是否有過之前用pd.read打開csv文件都正常,但突然有一天運行以前的代碼就突然報錯,這篇文章主要給大家介紹了關(guān)于如何解決python使用pd.read_csv()出現(xiàn)錯誤UnicodeDecodeError:?'utf-8'?codec?can't?decode......的相關(guān)資料,需要的朋友可以參考下
    2023-12-12
  • 在PyCharm中高效使用遠程文件編輯功能的實現(xiàn)

    在PyCharm中高效使用遠程文件編輯功能的實現(xiàn)

    PyCharm作為業(yè)界領(lǐng)先的集成開發(fā)環(huán)境(IDE),提供了強大的本地和遠程開發(fā)功能,本文詳細介紹了如何在PyCharm中使用遠程文件編輯功能,希望能夠幫助你提高遠程開發(fā)的效率和體驗
    2024-08-08
  • 用代碼幫你了解Python基礎(chǔ)(3)

    用代碼幫你了解Python基礎(chǔ)(3)

    這篇文章主要用代碼幫你了解Python基礎(chǔ),使用循環(huán),字典和集合的示例代碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • Python 爬蟲批量爬取網(wǎng)頁圖片保存到本地的實現(xiàn)代碼

    Python 爬蟲批量爬取網(wǎng)頁圖片保存到本地的實現(xiàn)代碼

    這篇文章主要介紹了Python 爬蟲批量爬取網(wǎng)頁圖片保存到本地,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-12-12

最新評論