pingテストパッケージの内容はファイルに書き込まれ、対応する結果のpythonの統計分析を使用します

次のように、ログファイルを書き込んだのpingテストパッケージの内容は、コウモリのスクリプトは次のとおりです。

@ECHO OFF 
%〜D0 
のCD%CD% \ 
スタートCMD.EXE / C " PING.EXE 192.168.1.21 >> 1.21.log" 300 -n 
スタートCMD.EXE / C " 192.168.1.45 >> 1.45 PING.EXE。ログ」-n 300 
スタートCMD.EXE / C " " 300 -n 192.168.1.77 PING.EXE >> 1.77.logを 
開始CMD.EXE / C " 300 -n 192.168.1.79 PING.EXE >> 1.79.log"を 
開始CMD.EXE / C " PING.EXE 192.168.1.114 >> 1.114.log" -n 300 
スタートCMD.EXE / C " 300 -n PING.EXE 192.168.1.120 >> 1.120.log" 
スタートCMD.EXE / C " PING.EXE 192.168.1.121 >> 1.121。ログ"-n 300 
スタートCMD.EXE / C "PING.EXE 192.168.1.113 "300 -n >> 1.113.log 
開始CMD.EXE / C " " 300 -n 192.168.1.116 >> 1.116.log PING.EXE 
開始CMD.EXE / C " PING.EXE 192.168.1.119 >> 1.119.log」-n 300 
スタートCMD.EXE / C " 300 -n PING.EXE 192.168.1.117 >> 1.117.log"

次のように第二、Excelのコードに格納されたデータの.logファイルの生成と分析があります。

輸入再、OSは、時間
 のインポートはxlwt
 インポートOSの

#は、現在のファイル名の拡張子.logのリストの下のフォルダを取得
DEF readFileList():
    アイテム(= os.listdirを" " 
    newList = []
     のための名前アイテム:
       IF names.endswith(" .logの" ):
        newList.append(名前)を返すnewList #は、ログファイルの統計情報取得DEF ReadMsgと(ファイルを):
    ファイル・リスト内のiについて: 
    fは=オープン(ファイル、' R '
    



    fileMsg = f.readlines()
    ipMatch2 = re.search(R ' (([01] \ D \ D |?2 [0-4] \ D | 25 [0-5] \ D)\。){ 3}(?[01] \ D \ D | 2 [0-4] \ D | 25 [0-5] \ D)'、fileMsg [-2 ])
     場合 ipMatch2 == なし:
        ipMatch = re.search (R ' (([01] \ D \ D |?2 [0-4] \ D |。25 [0-5] \ D)\){3}([01] \ D \ D?| 2 [0-4] \ D | 25 [0-5] \ D)'、fileMsg [-4 ])
        IP = ipMatch.group()
        印刷(IP) 
        dataPackage = fileMsg [-3:-2] [0 ] .strip(' \ nを').replace("  """
        dataPackageClient = dataPackage.split(' ')[0] .split(' ')[1 ] 
        dataPackageSever = dataPackage.split(' ')[1 ] 
        dataPackageLose = dataPackage.split(' ')[2 ]
         #1 プリント(dataPackage) 
        遅延時間= fileMsg [-1] .strip(' の\ n ').replace(" """ 
        delayTimeMin = delayTime.split(' ' )[0] 
        delayTimeMax = delayTime.split(' ')[1 ] 
        delayTimeAvg = delayTime.split(' ')[2 ]
         #のプリント(遅延時間)
    
        IP = ipMatch2.group()
        dataPackageClient = ' pingが失敗
        dataPackageSever = Noneに
        dataPackageLose = Noneに
        delayTimeMin = Noneに
        delayTimeMax = Noneに
        delayTimeAvg = なし
         #の印刷(IP) 
        印刷( "ピングの失敗")
    のリターン[IP、dataPackageClient、dataPackageSever、dataPackageLose、delayTimeMin、delayTimeMax、delayTimeAvg]
    印刷(「-------------- ------------------------- ') 

得られた統計をエクセルに書き込まれる
DEF 書き込みデータを():
    NEWTABLE = ' ping.xls ' 
    WB = xlwt.Workbook(エンコード= ' UTF-8 ' 
    WS = wb.add_sheet(' ピングの'、cell_overwrite_ok = TRUE)  は、テーブル作成 
    headData =を[ ' IPを '' 送信'' 受信'' 失われた'' 最小'' 最大'' 平均' ]
     のため colNum引数範囲(0 ,. 7 ):
        ws.writeを(0、colNum引数、headData [colNum引数]、xlwt.easyxf(' フォント:太字ON ' ))
    インデックス = 1。
     ための I における範囲(LEN(dataMsg)):   列のExcelの数
        のための J 範囲(0,7)。        エクセル的行数
        #1 [i]は、印刷RSSIT 
            ws.write(インデックス、J、dataMsg [I] [J])
        インデックス + = 1 
    wb.save(NEWTABLE)

場合 __name__ == ' __main__ ' 
    のfileList = readFileList()
     プリント(のfileList)
    dataMsg = []
     のためのファイルのfileList:
        dataMsg.append(ReadMsgと(ファイル))
    プリント(dataMsg)
    書き込みデータ()

 

おすすめ

転載: www.cnblogs.com/hubangsheng/p/11536129.html
おすすめ