我正在尝试从.log格式将一些事件日志解析为.csv,以便我的事件管理器软件可以读取它。
我正在尝试在文件夹中搜索以.log扩展名结尾的所有文件,然后在每行查看“安全”一词,按标签分隔值并将这些值粘贴到自动创建的.csv文件中。
问题是当粘贴数据时,它会在文件中添加额外的行和rb。一个例子是:第1行:数据,第2行:空白,第3行:rb,第4行:空白,第5行:数据等。
这就是我目前正在使用的。
import sys, random, os, csv, fileinput, glob, re, pygame
from os import path
import time as t
date = t.localtime(t.time())
destination = raw_input("Give the path of your file: ")
for logtest in glob.glob(destination +"*.log"):
logname = logtest[:-4]
assert os.path.exists(logtest), "No file was found at, "+str(logtest)
name = "Log_Filter_%d_%d_%d_%d_%d_%d.csv" %(date[1], date[2], (date[0] %100), date[3], date[4], date[5])
auditlog = open(logtest, "r")
if not(path.isfile(destination + name)):
splittestfile = csv.writer(open(destination + name, "a"))
for x in auditlog:
if "Security" in x:
splitstr = csv.reader((x, "rb"), delimiter = "\t")
splittestfile.writerows(splitstr)