From b8a25a0c5847b304942b3849918245ad88c9ab1e Mon Sep 17 00:00:00 2001 From: SXP-Simon Date: Fri, 10 Oct 2025 14:28:24 +0800 Subject: [PATCH] =?UTF-8?q?[fix]=20=E7=A1=AE=E4=BF=9Dmsg=E6=98=AF=E5=AD=97?= =?UTF-8?q?=E5=85=B8=E7=B1=BB=E5=9E=8B=EF=BC=8C=E9=81=BF=E5=85=8D'str'=20o?= =?UTF-8?q?bject=20has=20no=20attribute=20'get'=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/analysis/analyzers/topic_analyzer.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/analysis/analyzers/topic_analyzer.py b/src/analysis/analyzers/topic_analyzer.py index 0a53281..9cf7a37 100644 --- a/src/analysis/analyzers/topic_analyzer.py +++ b/src/analysis/analyzers/topic_analyzer.py @@ -47,6 +47,10 @@ class TopicAnalyzer(BaseAnalyzer): # 提取文本消息 text_messages = [] for msg in messages: + # 确保msg是字典类型,避免'str' object has no attribute 'get'错误 + if not isinstance(msg, dict): + continue + sender = msg.get("sender", {}) nickname = sender.get("nickname", "") or sender.get("card", "") msg_time = datetime.fromtimestamp(msg.get("time", 0)).strftime("%H:%M") @@ -189,6 +193,10 @@ class TopicAnalyzer(BaseAnalyzer): """ text_messages = [] for msg in messages: + # 确保msg是字典类型,避免'str' object has no attribute 'get'错误 + if not isinstance(msg, dict): + continue + sender = msg.get("sender", {}) nickname = sender.get("nickname", "") or sender.get("card", "") msg_time = datetime.fromtimestamp(msg.get("time", 0)).strftime("%H:%M")