From 9a45dfaf3511ac576a9596dc0c7777cd3848ec63 Mon Sep 17 00:00:00 2001 From: Yuxin Wu Date: Tue, 6 Sep 2016 02:01:32 -0400 Subject: [PATCH] bug fix --- wechat/parser.py | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/wechat/parser.py b/wechat/parser.py index 87cdcfa..835c532 100644 --- a/wechat/parser.py +++ b/wechat/parser.py @@ -11,7 +11,7 @@ from datetime import datetime import logging logger = logging.getLogger(__name__) -from .msg import WeChatMsg +from .msg import WeChatMsg, TYPE_SYSTEM from common.textutil import ensure_unicode """ tables in concern: @@ -135,13 +135,14 @@ SELECT {} FROM message if values['chat'].endswith('@chatroom'): values['chat'] = self.contacts[values['chat']] content = values['content'] - talker = content[:content.find(':')] - try: - values['talker'] = self.contacts[talker] + if values['isSend'] == 1: + values['talker'] = self.username + elif values['type'] == TYPE_SYSTEM: + values['talker'] = u'SYSTEM' + else: + talker = content[:content.find(':')] + values['talker'] = self.contacts.get(talker, talker) values['content'] = content[content.find('\n') + 1:] - except KeyError: - # system messages have no talker - values['talker'] = u'' else: tk_id = values['talker'] values['chat'] = self.contacts[tk_id]