diff --git a/yunke-server/scripts/scrape_via_page.py b/yunke-server/scripts/scrape_via_page.py index 10cd8a4..0d9bfad 100644 --- a/yunke-server/scripts/scrape_via_page.py +++ b/yunke-server/scripts/scrape_via_page.py @@ -655,7 +655,10 @@ async def scrape_messages(cookie_str: str, max_conversations: int = 100): # 用发送的 friend_id(与客户表一致)优先,API 返回的 talker 可能脱敏 "talker_id": friend_id or row.get("talker") or row.get("oriTalker"), "room_id": None, - "is_send": bool(row.get("isSend", 0)) if row.get("isSend") is not None else None, + "is_send": ( + bool(row["isSend"]) if row.get("isSend") is not None + else (bool(row["mine"]) if row.get("mine") is not None else None) + ), "type": _normalize_msg_type(row.get("type")), "type_raw": row.get("type"), "text": row.get("content") or row.get("text") or "", @@ -744,7 +747,10 @@ def _normalize_group_message(row: dict, owner_id: str, room_id: str) -> dict | N "owner_account_id": owner_id, "talker_id": talker or None, "room_id": row.get("roomid") or room_id, - "is_send": bool(row.get("isSend", 0)) if row.get("isSend") is not None else None, + "is_send": ( + bool(row["isSend"]) if row.get("isSend") is not None + else (bool(row["mine"]) if row.get("mine") is not None else None) + ), "type": _normalize_msg_type(row.get("type")), "type_raw": row.get("type"), "text": row.get("content") or row.get("text") or "", diff --git a/yunkes/src/components/MessageBubble.vue b/yunkes/src/components/MessageBubble.vue index 91f0190..db7e017 100644 --- a/yunkes/src/components/MessageBubble.vue +++ b/yunkes/src/components/MessageBubble.vue @@ -1,6 +1,6 @@