Initial Commit
Init
This commit is contained in:
parent
13f3faef0a
commit
93df790700
59
SpyNote_parser.py
Normal file
59
SpyNote_parser.py
Normal file
@ -0,0 +1,59 @@
|
||||
import re
|
||||
from argparse import ArgumentParser, BooleanOptionalAction
|
||||
|
||||
|
||||
def split_text(text):
|
||||
pattern = r'10250-110251|-110251'
|
||||
return re.split(pattern, text)
|
||||
|
||||
|
||||
def parse_splittet(text):
|
||||
if VERBOSE:
|
||||
print(text)
|
||||
pattern = r'10250-110251|10251'
|
||||
out = re.split(pattern, text)
|
||||
return {"text": out[0], "app": out[1], "time": out[2]}
|
||||
|
||||
|
||||
def write_file(f, out, ignore=False):
|
||||
if PRINT_CMD:
|
||||
print(FORMAT_PATTERN.format(**out))
|
||||
if not ignore:
|
||||
f.write(FORMAT_PATTERN.format(**out)+"\n")
|
||||
else:
|
||||
f.write(out+"\n")
|
||||
|
||||
def setup_settings(args):
|
||||
global VERBOSE
|
||||
global PRINT_CMD
|
||||
global FORMAT_PATTERN
|
||||
VERBOSE = args.v
|
||||
PRINT_CMD = args.p
|
||||
FORMAT_PATTERN = args.f
|
||||
|
||||
def setup_cmd_args():
|
||||
parser = ArgumentParser(description="SpyNote 6.4 keylogger log parser")
|
||||
parser.add_argument('file', type=str, help='Keylogger file on SpyNote')
|
||||
parser.add_argument('output', type=str, help='Parsed and formated file output')
|
||||
parser.add_argument('-p', type=bool, action=BooleanOptionalAction, help="Print text on command line")
|
||||
parser.add_argument('-f', type=str, help="Set format pattern", default="{app} - {time} --- {text}")
|
||||
parser.add_argument('-v', type=bool, action=BooleanOptionalAction, help="Verbose")
|
||||
return parser.parse_args()
|
||||
|
||||
def worker(input_file: str, output_file: str) -> None:
|
||||
f = open(output_file, "w")
|
||||
text = open(input_file, 'r').read()
|
||||
|
||||
for i in split_text(text):
|
||||
if i == "":
|
||||
continue
|
||||
write_file(f, parse_splittet(i), ignore=False)
|
||||
f.close()
|
||||
|
||||
def main():
|
||||
args = setup_cmd_args()
|
||||
setup_settings(args)
|
||||
worker(args.file, args.output)
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
Loading…
Reference in New Issue
Block a user