下記ログを整形するため、2つどうしても実現できなくて困っております。
1つめ
全ての行に日時を一番左に入れておきたい。
2つ目
不要な空白(スペースやタブや改行など)を「,」一つに置き換えたい
アドバイスの程、よろしくお願い致します。
Wed Sep 15 17:26:27 JST 2021 MAC Address IP Type APID AP Name L2 Mode L3 Mode Authenticated User Name Tag/ID RF Band IP Mode Client IP Station Type OS Type VLAN Pool Name aa:aa:aa:aa:aa:aa Discovered 244 AP1 wpa2-psk clear 0 802.11bgn2s20 IPv4 192.168.201.175 wireless 370103060f1f212b2c2e2f7779f9fc bb:bb:bb:bb:bb:bb Discovered 245 AP2 wpa2-psk clear 0 802.11bgn2s20 IPv4 192.168.202.144 wireless 370103060f1f212b2c2e2f7779f9fc cc:cc:cc:cc:cc:cc Discovered 244 AP3 wpa2-psk clear 0 802.11an IPv4 192.168.203.133 wireless 370103060f1f212b2c2e2f7779f9fc Wed Sep 15 17:27:41 JST 2021 MAC Address IP Type APID AP Name L2 Mode L3 Mode Authenticated User Name Tag/ID RF Band IP Mode Client IP Station Type OS Type VLAN Pool Name aa:aa:aa:aa:aa:aa Discovered 244 AP1 wpa2-psk clear 0 802.11bgn2s20 IPv4 192.168.201.175 wireless 370103060f1f212b2c2e2f7779f9fc bb:bb:bb:bb:bb:bb Discovered 245 AP2 wpa2-psk clear 0 802.11bgn2s20 IPv4 192.168.202.144 wireless 370103060f1f212b2c2e2f7779f9fc cc:cc:cc:cc:cc:cc Discovered 244 AP3 wpa2-psk clear 0 802.11an IPv4 192.168.203.133 wireless 370103060f1f212b2c2e2f7779f9fc
python
1import re 2 3Date_Param = r'\d{2}:\d{2}:\d{2}' 4Date_reg = re.compile(Date_Param) 5time_stanp = '' 6log = [] 7 8with open('wlc.log', 'r', encoding='shift_jis') as f: 9 lines = f.readlines() 10 11# 一番左に日時を入れる処理 12for line in lines: 13 m = Date_reg.search(line) 14 if m: 15 # print(line.strip('\n')) 16 time_stanp = line 17 sep = '' 18 else: 19 sep = '' 20 log_str = f"{time_stanp}{sep}{line}" 21 # log.append(log_str.strip('\r\n')) 22 print(log_str.split(','))
これ……ログがカンマとかタブ区切りではなく、空白の個数もヘッダーとそれ以外で綺麗に並ぶわけでもないのは、元からそういうものなんですかね。
ヘッダーの各カラムの名前を切り分けるのにもヒューリスティックな知識が必要になるという。
回答2件
あなたの回答
tips
プレビュー