Added message class
This commit is contained in:
parent
ccebedce22
commit
dd080fe3a1
25
trader.py
25
trader.py
@ -1,4 +1,3 @@
|
|||||||
import watchdog
|
|
||||||
import argparse
|
import argparse
|
||||||
import time
|
import time
|
||||||
from parse import parse
|
from parse import parse
|
||||||
@ -22,6 +21,16 @@ channel_mapping = {'#': Channel.GLOBAL,
|
|||||||
'$': Channel.TRADE,
|
'$': Channel.TRADE,
|
||||||
'&': Channel.GUILD}
|
'&': Channel.GUILD}
|
||||||
|
|
||||||
|
class Message():
|
||||||
|
def __init__(self, message: str, date: datetime.datetime, user: str, channel: Channel) -> None:
|
||||||
|
self.message = message
|
||||||
|
self.date = date
|
||||||
|
self.user = user
|
||||||
|
self.channel = channel
|
||||||
|
|
||||||
|
def __str__(self) -> str:
|
||||||
|
return f'{self.date} - {self.channel.name}: {self.user}: {self.message}'
|
||||||
|
|
||||||
def follow(thefile: str):
|
def follow(thefile: str):
|
||||||
thefile.seek(0, 2)
|
thefile.seek(0, 2)
|
||||||
while True:
|
while True:
|
||||||
@ -32,12 +41,12 @@ def follow(thefile: str):
|
|||||||
yield line
|
yield line
|
||||||
|
|
||||||
|
|
||||||
def parse_string(text: str):
|
def parse_string(text: str) -> Message:
|
||||||
result = parse('{date} {time} {timemicro} {noidea} [{level} {client} {id}]{mess_type:1}{user}: {message}', text)
|
result = parse('{date} {time} {timemicro} {noidea} [{level} {client} {id}]{mess_type:1}{user}: {message}', text)
|
||||||
# date = datetime.datetime.strptime(f'{result["date"]} {result["time"]}', '%Y/%m/%d %H:%M:%S')
|
if not result:
|
||||||
# print(f'{date.isoformat()}: {result["message"]}')
|
return None
|
||||||
print(text)
|
date = datetime.datetime.strptime(f'{result["date"]} {result["time"]}', '%Y/%m/%d %H:%M:%S')
|
||||||
print(result)
|
return Message(result['message'], date, result['user'], channel_mapping[result['mess_type']])
|
||||||
|
|
||||||
|
|
||||||
def setup_args() -> argparse.Namespace:
|
def setup_args() -> argparse.Namespace:
|
||||||
@ -55,5 +64,5 @@ if __name__ == "__main__":
|
|||||||
logfile = open(args.logfile, 'r', encoding='utf8')
|
logfile = open(args.logfile, 'r', encoding='utf8')
|
||||||
loglines = follow(logfile)
|
loglines = follow(logfile)
|
||||||
for line in loglines:
|
for line in loglines:
|
||||||
parse_string(line)
|
message = parse_string(line)
|
||||||
# print(line)
|
print(message)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user