From 0400644aaa44f49898105e964170a9312506c38d Mon Sep 17 00:00:00 2001 From: daimiaopeng <844362911@qq.com> Date: Wed, 6 Dec 2023 10:40:25 +0800 Subject: [PATCH 1/9] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BA=93=E4=B8=AD=E7=BB=93=E6=9E=9C=E4=B8=8D?= =?UTF-8?q?=E8=83=BD=E7=BC=96=E7=A0=81=E5=88=B0UTF-8=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/DataBase/merge.py | 1 + 1 file changed, 1 insertion(+) diff --git a/app/DataBase/merge.py b/app/DataBase/merge.py index e28073e..7679821 100644 --- a/app/DataBase/merge.py +++ b/app/DataBase/merge.py @@ -13,6 +13,7 @@ def merge_databases(source_paths, target_path): if not os.path.exists(source_path): break db = sqlite3.connect(source_path) + db.text_factory = bytes cursor = db.cursor() sql = ''' SELECT TalkerId,MsgsvrID,Type,SubType,IsSender,CreateTime,Sequence,StrTalker,StrContent,DisplayContent,BytesExtra From a56e96e2d15603976bac1f0a15cc067144aadd22 Mon Sep 17 00:00:00 2001 From: STDquantum <405720329@qq.com> Date: Wed, 6 Dec 2023 11:23:33 +0800 Subject: [PATCH 2/9] =?UTF-8?q?=E5=B0=86=E5=AF=BC=E5=87=BAhtml=E4=B8=AD?= =?UTF-8?q?=E7=9A=84"[=E6=96=87=E6=9C=AC]"=E6=9B=BF=E6=8D=A2=E4=B8=BA?= =?UTF-8?q?=E5=BE=AE=E4=BF=A1=E8=A1=A8=E6=83=85=E5=8C=85=E7=9A=84=E9=93=BE?= =?UTF-8?q?=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/DataBase/output_pc.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/app/DataBase/output_pc.py b/app/DataBase/output_pc.py index a9e8e15..292d30c 100644 --- a/app/DataBase/output_pc.py +++ b/app/DataBase/output_pc.py @@ -671,6 +671,13 @@ input { font-size: 14px; } +.emoji_img { + width: 26px; + height: 26px; + position: relative; + bottom: -6px; +} + @@ -723,6 +730,8 @@ const chatMessages = [ MePC().avatar.save(os.path.join(origin_docx_path, 'myhead.png')) self.contact.avatar.save(os.path.join(origin_docx_path, 'tahead.png')) self.rangeSignal.emit(len(messages)) + emoji = {'[微笑]': '', '[撇嘴]': '', '[色]': '', '[发呆]': '', '[得意]': '', '[流泪]': '', '[害羞]': '', '[闭嘴]': '', '[睡]': '', '[大哭]': '', '[尴尬]': '', '[发怒]': '', '[调皮]': '', '[呲牙]': '', '[惊讶]': '', '[难过]': '', '[抓狂]': '', '[吐]': '', '[偷笑]': '', '[愉快]': '', '[白眼]': '', '[傲慢]': '', '[困]': '', '[惊恐]': '', '[憨笑]': '', '[悠闲]': '', '[咒骂]': '', '[疑问]': '', '[嘘]': '', '[晕]': '', '[衰]': '', '[骷髅]': '', '[敲打]': '', '[再见]': '', '[擦汗]': '', '[抠鼻]': '', '[鼓掌]': '', '[坏笑]': '', '[右哼哼]': '', '[鄙视]': '', '[委屈]': '', '[快哭了]': '', '[阴险]': '', '[亲亲]': '', '[可怜]': '', '[笑脸]': '', '[生病]': '', '[脸红]': '', '[破涕为笑]': '', '[恐惧]': '', '[失望]': '', '[无语]': '', '[嘿哈]': '', '[捂脸]': '', '[奸笑]': '', '[机智]': '', '[皱眉]': '', '[耶]': '', '[吃瓜]': '', '[加油]': '', '[汗]': '', '[天啊]': '', '[Emm]': '', '[社会社会]': '', '[旺柴]': '', '[好的]': '', '[打脸]': '', '[哇]': '', '[翻白眼]': '', '[666]': '', '[让我看看]': '', '[叹气]': '', '[苦涩]': '', '[裂开]': '', '[嘴唇]': '', '[爱心]': '', '[心碎]': '', '[拥抱]': '', '[强]': '', '[弱]': '', '[握手]': '', '[胜利]': '', '[抱拳]': '', '[勾引]': '', '[拳头]': '', '[OK]': '', '[合十]': '', '[啤酒]': '', '[咖啡]': '', '[蛋糕]': '', '[玫瑰]': '', '[凋谢]': '', '[菜刀]': '', '[炸弹]': '', '[便便]': '', '[月亮]': '', '[太阳]': '', '[庆 祝]': '', '[礼物]': '', '[红包]': '', '[發]': '', '[福]': '', '[烟花]': '', '[爆竹]': '', '[猪头]': '', '[跳跳]': '', '[发抖]': '', '[转圈]': ''} + from re import findall for index, message in enumerate(messages): type_ = message[2] str_content = message[7] @@ -740,6 +749,11 @@ const chatMessages = [ f.write( f'''{{ type:0, text: '{str_time}',is_send:0,avatar_path:''}},''' ) + + emojiText = findall(r"(\[.+?\])", str_content) + for emoji_text in emojiText: + if emoji_text in emoji: + str_content = str_content.replace(emoji_text, emoji[emoji_text]) f.write( f'''{{ type:{type_}, text: '{str_content}',is_send:{is_send},avatar_path:'{avatar}'}},''' ) From 0aa1ac964fe14c8432a0dfe59e17eafeb4a4a8b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E4=BC=9F?= Date: Wed, 6 Dec 2023 15:34:56 +0800 Subject: [PATCH 3/9] =?UTF-8?q?=E5=AF=BC=E5=87=BAcsv=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E6=97=B6=EF=BC=8C=E5=A2=9E=E5=8A=A0=E5=8F=91=E9=80=81=E4=BA=BA?= =?UTF-8?q?=E5=90=8D=E7=A7=B0=E3=80=81=E6=8E=A5=E5=8F=97=E8=80=85=E5=90=8D?= =?UTF-8?q?=E7=A7=B0=E3=80=81=E5=A4=87=E6=B3=A8=E5=90=8D=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/DataBase/micro_msg.py | 31 +++++++++ app/DataBase/msg.py | 2 +- app/DataBase/output_pc.py | 13 ++-- app/DataBase/package_msg.py | 103 +++++++++++++++++++++++++++++ app/util/protocbuf/__init__.py | 0 app/util/protocbuf/msg.proto | 18 +++++ app/util/protocbuf/msg_pb2.py | 54 +++++++++++++++ app/util/protocbuf/readme.md | 34 ++++++++++ app/util/protocbuf/roomdata.proto | 19 ++++++ app/util/protocbuf/roomdata_pb2.py | 45 +++++++++++++ requirements.txt | Bin 838 -> 936 bytes 11 files changed, 314 insertions(+), 5 deletions(-) create mode 100644 app/DataBase/package_msg.py create mode 100644 app/util/protocbuf/__init__.py create mode 100644 app/util/protocbuf/msg.proto create mode 100644 app/util/protocbuf/msg_pb2.py create mode 100644 app/util/protocbuf/readme.md create mode 100644 app/util/protocbuf/roomdata.proto create mode 100644 app/util/protocbuf/roomdata_pb2.py diff --git a/app/DataBase/micro_msg.py b/app/DataBase/micro_msg.py index f36cec8..23e7d7e 100644 --- a/app/DataBase/micro_msg.py +++ b/app/DataBase/micro_msg.py @@ -63,6 +63,37 @@ class MicroMsg: lock.release() return result + def get_contact_by_username(self, username): + if not self.open_flag: + return None + try: + lock.acquire(True) + sql = '''SELECT UserName, Alias, Type, Remark, NickName, PYInitial, RemarkPYInitial, ContactHeadImgUrl.smallHeadImgUrl, ContactHeadImgUrl.bigHeadImgUrl + FROM Contact + INNER JOIN ContactHeadImgUrl ON Contact.UserName = ContactHeadImgUrl.usrName + WHERE UserName = ? + ''' + self.cursor.execute(sql, [username]) + result = self.cursor.fetchone() + finally: + lock.release() + return result + + def get_chatroom_info(self, chatroomname): + ''' + 获取群聊信息 + ''' + if not self.open_flag: + return None + try: + lock.acquire(True) + sql = '''SELECT ChatRoomName, RoomData FROM ChatRoom WHERE ChatRoomName = ?''' + self.cursor.execute(sql, [chatroomname]) + result = self.cursor.fetchone() + finally: + lock.release() + return result + def close(self): if self.open_flag: try: diff --git a/app/DataBase/msg.py b/app/DataBase/msg.py index 9399c82..76a2919 100644 --- a/app/DataBase/msg.py +++ b/app/DataBase/msg.py @@ -72,7 +72,7 @@ class Msg: def get_messages_all(self): sql = ''' - select localId,TalkerId,Type,SubType,IsSender,CreateTime,Status,StrContent,strftime('%Y-%m-%d %H:%M:%S',CreateTime,'unixepoch','localtime') as StrTime,MsgSvrID + select localId,TalkerId,Type,SubType,IsSender,CreateTime,Status,StrContent,strftime('%Y-%m-%d %H:%M:%S',CreateTime,'unixepoch','localtime') as StrTime,MsgSvrID,BytesExtra,StrTalker,Reserved1 from MSG order by CreateTime ''' diff --git a/app/DataBase/output_pc.py b/app/DataBase/output_pc.py index a9e8e15..6f78d93 100644 --- a/app/DataBase/output_pc.py +++ b/app/DataBase/output_pc.py @@ -5,6 +5,7 @@ import os from PyQt5.QtCore import pyqtSignal, QThread from . import msg_db +from .package_msg import PackageMsg from ..DataBase import hard_link_db from ..person_pc import MePC from ..util import get_abs_path @@ -65,8 +66,10 @@ class Output(QThread): # columns = ["用户名", "消息内容", "发送时间", "发送状态", "消息类型", "isSend", "msgId"] columns = ['localId', 'TalkerId', 'Type', 'SubType', 'IsSender', 'CreateTime', 'Status', 'StrContent', - 'StrTime'] - messages = msg_db.get_messages_all() + 'StrTime', 'Remark', 'NickName', 'Sender'] + # messages = msg_db.get_messages_all() + packagemsg = PackageMsg() + messages = packagemsg.get_package_message_all() # 写入CSV文件 with open(filename, mode='w', newline='', encoding='utf-8') as file: writer = csv.writer(file) @@ -165,8 +168,10 @@ class ChildThread(QThread): # columns = ["用户名", "消息内容", "发送时间", "发送状态", "消息类型", "isSend", "msgId"] columns = ['localId', 'TalkerId', 'Type', 'SubType', 'IsSender', 'CreateTime', 'Status', 'StrContent', - 'StrTime'] - messages = msg_db.get_messages_all() + 'StrTime', 'Remark', 'NickName', 'Sender'] + # messages = msg_db.get_messages_all() + packagemsg = PackageMsg() + messages = packagemsg.get_package_message_all() # 写入CSV文件 with open(filename, mode='w', newline='', encoding='utf-8') as file: writer = csv.writer(file) diff --git a/app/DataBase/package_msg.py b/app/DataBase/package_msg.py new file mode 100644 index 0000000..59bfd9a --- /dev/null +++ b/app/DataBase/package_msg.py @@ -0,0 +1,103 @@ +import threading + +from app.DataBase import msg_db, micro_msg_db +from app.util.protocbuf.msg_pb2 import MessageBytesExtra +from app.util.protocbuf.roomdata_pb2 import ChatRoomData + +lock = threading.Lock() + + +def singleton(cls): + _instance = {} + + def inner(): + if cls not in _instance: + _instance[cls] = cls() + return _instance[cls] + + return inner + + +@singleton +class PackageMsg: + def __init__(self): + self.ChatRoomMap = {} + + def get_package_message_all(self): + ''' + 获取完整的聊天记录 + ''' + updated_messages = [] # 用于存储修改后的消息列表 + + messages = msg_db.get_messages_all() + for row in messages: + row_list = list(row) + # 删除不使用的几个字段 + del row_list[12] + del row_list[11] + del row_list[10] + + strtalker = row[11] + info = micro_msg_db.get_contact_by_username(strtalker) + if info is not None: + row_list.append(info[3]) + row_list.append(info[4]) + # 判断是否是群聊 + if strtalker.__contains__('@chatroom'): + # 自己发送 + if row[12] == 1: + row_list.append('我') + else: + # 存在BytesExtra为空的情况,此时消息类型应该为提示性消息。跳过不处理 + if row[10] is None: + continue + # 解析BytesExtra + msgbytes = MessageBytesExtra() + msgbytes.ParseFromString(row[10]) + wxid = '' + for tmp in msgbytes.message2: + if tmp.field1 != 1: + continue + wxid = tmp.field2 + sender = '' + # 获取群聊成员列表 + membersMap = self.get_chatroom_member_list(strtalker) + if membersMap is not None: + if wxid in membersMap: + sender = membersMap.get(wxid) + else: + senderinfo = micro_msg_db.get_contact_by_username(wxid) + if senderinfo is not None: + sender = senderinfo[4] + membersMap[wxid] = senderinfo[4] + if len(senderinfo[3]) > 0: + sender = senderinfo[3] + membersMap[wxid] = senderinfo[3] + row_list.append(sender) + updated_messages.append(tuple(row_list)) + return updated_messages + + def get_chatroom_member_list(self, strtalker): + membermap = {} + ''' + 获取群聊成员 + ''' + try: + lock.acquire(True) + if strtalker in self.ChatRoomMap: + membermap = self.ChatRoomMap.get(strtalker) + else: + chatroom = micro_msg_db.get_chatroom_info(strtalker) + if chatroom is None: + return None + # 解析RoomData数据 + parsechatroom = ChatRoomData() + parsechatroom.ParseFromString(chatroom[1]) + # 群成员数据放入字典存储 + for mem in parsechatroom.members: + if mem.displayName is not None and len(mem.displayName) > 0: + membermap[mem.wxID] = mem.displayName + self.ChatRoomMap[strtalker] = membermap + finally: + lock.release() + return membermap diff --git a/app/util/protocbuf/__init__.py b/app/util/protocbuf/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/app/util/protocbuf/msg.proto b/app/util/protocbuf/msg.proto new file mode 100644 index 0000000..1d88cec --- /dev/null +++ b/app/util/protocbuf/msg.proto @@ -0,0 +1,18 @@ +syntax = "proto3"; +package app.protobuf; +option go_package=".;proto"; + +message SubMessage1 { + int32 field1 = 1; + int32 field2 = 2; +} + +message SubMessage2 { + int32 field1 = 1; + string field2 = 2; +} + +message MessageBytesExtra { + SubMessage1 message1 = 1; + repeated SubMessage2 message2 = 3; +} diff --git a/app/util/protocbuf/msg_pb2.py b/app/util/protocbuf/msg_pb2.py new file mode 100644 index 0000000..f5f31c5 --- /dev/null +++ b/app/util/protocbuf/msg_pb2.py @@ -0,0 +1,54 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: msg.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\tmsg.proto\x12\x0c\x61pp.protobuf\"-\n\x0bSubMessage1\x12\x0e\n\x06\x66ield1\x18\x01 \x01(\x05\x12\x0e\n\x06\x66ield2\x18\x02 \x01(\x05\"-\n\x0bSubMessage2\x12\x0e\n\x06\x66ield1\x18\x01 \x01(\x05\x12\x0e\n\x06\x66ield2\x18\x02 \x01(\t\"m\n\x11MessageBytesExtra\x12+\n\x08message1\x18\x01 \x01(\x0b\x32\x19.app.protobuf.SubMessage1\x12+\n\x08message2\x18\x03 \x03(\x0b\x32\x19.app.protobuf.SubMessage2b\x06proto3') + + + +_SUBMESSAGE1 = DESCRIPTOR.message_types_by_name['SubMessage1'] +_SUBMESSAGE2 = DESCRIPTOR.message_types_by_name['SubMessage2'] +_MESSAGEBYTESEXTRA = DESCRIPTOR.message_types_by_name['MessageBytesExtra'] +SubMessage1 = _reflection.GeneratedProtocolMessageType('SubMessage1', (_message.Message,), { + 'DESCRIPTOR' : _SUBMESSAGE1, + '__module__' : 'msg_pb2' + # @@protoc_insertion_point(class_scope:app.protobuf.SubMessage1) + }) +_sym_db.RegisterMessage(SubMessage1) + +SubMessage2 = _reflection.GeneratedProtocolMessageType('SubMessage2', (_message.Message,), { + 'DESCRIPTOR' : _SUBMESSAGE2, + '__module__' : 'msg_pb2' + # @@protoc_insertion_point(class_scope:app.protobuf.SubMessage2) + }) +_sym_db.RegisterMessage(SubMessage2) + +MessageBytesExtra = _reflection.GeneratedProtocolMessageType('MessageBytesExtra', (_message.Message,), { + 'DESCRIPTOR' : _MESSAGEBYTESEXTRA, + '__module__' : 'msg_pb2' + # @@protoc_insertion_point(class_scope:app.protobuf.MessageBytesExtra) + }) +_sym_db.RegisterMessage(MessageBytesExtra) + +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + _SUBMESSAGE1._serialized_start=27 + _SUBMESSAGE1._serialized_end=72 + _SUBMESSAGE2._serialized_start=74 + _SUBMESSAGE2._serialized_end=119 + _MESSAGEBYTESEXTRA._serialized_start=121 + _MESSAGEBYTESEXTRA._serialized_end=230 +# @@protoc_insertion_point(module_scope) diff --git a/app/util/protocbuf/readme.md b/app/util/protocbuf/readme.md new file mode 100644 index 0000000..15b3c63 --- /dev/null +++ b/app/util/protocbuf/readme.md @@ -0,0 +1,34 @@ +# 说明 + +## 解析 +```shell +protoc --decode_raw < msg_data.txt +``` + +## 根据解析结果,设置.proto文件 +```shell +1 { + 1: 16 + 2: 0 +} +3 { + 1: 1 + 2: "wxid_4b1t09d63spw22" +} +3 { + 1: 7 + 2: "\n\t\n\t\t2\n\t\n\t\n\t\tc6680ab2c57499a1a22e44a7eada76e8_\n\t\n\t1\n\t198\n\tv1_Gj7hfmi5\n\t\n\t\t\n\t\n\n" +} +3 { + 1: 2 + 2: "c13acbc95512d1a59bb686d684fd64d8" +} +3 { + 1: 4 + 2: "yiluoAK_47\\FileStorage\\Cache\\2023-08\\2286b5852db82f6cbd9c2084ccd52358" +} +``` +## 生成python文件 +```shell +protoc --python_out=. msg.proto +``` \ No newline at end of file diff --git a/app/util/protocbuf/roomdata.proto b/app/util/protocbuf/roomdata.proto new file mode 100644 index 0000000..36b1f9c --- /dev/null +++ b/app/util/protocbuf/roomdata.proto @@ -0,0 +1,19 @@ +syntax = "proto3"; +package app.protobuf; +option go_package=".;proto"; + +message ChatRoomData { + message ChatRoomMember { + string wxID = 1; + string displayName = 2; + int32 state = 3; + } + repeated ChatRoomMember members = 1; + int32 field_2 = 2; + int32 field_3 = 3; + int32 field_4 = 4; + int32 room_capacity = 5; + int32 field_6 = 6; + int64 field_7 = 7; + int64 field_8 = 8; +} \ No newline at end of file diff --git a/app/util/protocbuf/roomdata_pb2.py b/app/util/protocbuf/roomdata_pb2.py new file mode 100644 index 0000000..7800214 --- /dev/null +++ b/app/util/protocbuf/roomdata_pb2.py @@ -0,0 +1,45 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: roomdata.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0eroomdata.proto\x12\x0c\x61pp.protobuf\"\x8b\x02\n\x0c\x43hatRoomData\x12:\n\x07members\x18\x01 \x03(\x0b\x32).app.protobuf.ChatRoomData.ChatRoomMember\x12\x0f\n\x07\x66ield_2\x18\x02 \x01(\x05\x12\x0f\n\x07\x66ield_3\x18\x03 \x01(\x05\x12\x0f\n\x07\x66ield_4\x18\x04 \x01(\x05\x12\x15\n\rroom_capacity\x18\x05 \x01(\x05\x12\x0f\n\x07\x66ield_6\x18\x06 \x01(\x05\x12\x0f\n\x07\x66ield_7\x18\x07 \x01(\x03\x12\x0f\n\x07\x66ield_8\x18\x08 \x01(\x03\x1a\x42\n\x0e\x43hatRoomMember\x12\x0c\n\x04wxID\x18\x01 \x01(\t\x12\x13\n\x0b\x64isplayName\x18\x02 \x01(\t\x12\r\n\x05state\x18\x03 \x01(\x05\x62\x06proto3') + + + +_CHATROOMDATA = DESCRIPTOR.message_types_by_name['ChatRoomData'] +_CHATROOMDATA_CHATROOMMEMBER = _CHATROOMDATA.nested_types_by_name['ChatRoomMember'] +ChatRoomData = _reflection.GeneratedProtocolMessageType('ChatRoomData', (_message.Message,), { + + 'ChatRoomMember' : _reflection.GeneratedProtocolMessageType('ChatRoomMember', (_message.Message,), { + 'DESCRIPTOR' : _CHATROOMDATA_CHATROOMMEMBER, + '__module__' : 'roomdata_pb2' + # @@protoc_insertion_point(class_scope:app.protobuf.ChatRoomData.ChatRoomMember) + }) + , + 'DESCRIPTOR' : _CHATROOMDATA, + '__module__' : 'roomdata_pb2' + # @@protoc_insertion_point(class_scope:app.protobuf.ChatRoomData) + }) +_sym_db.RegisterMessage(ChatRoomData) +_sym_db.RegisterMessage(ChatRoomData.ChatRoomMember) + +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + _CHATROOMDATA._serialized_start=33 + _CHATROOMDATA._serialized_end=300 + _CHATROOMDATA_CHATROOMMEMBER._serialized_start=234 + _CHATROOMDATA_CHATROOMMEMBER._serialized_end=300 +# @@protoc_insertion_point(module_scope) diff --git a/requirements.txt b/requirements.txt index afa9ee0da14451a74ae66a3838952e5635aed887..917bb83aebb523af977f0a8f8a89970e7f0c1b27 100644 GIT binary patch delta 106 zcmX@cwt{_w8*>sb0~bR&Lp~6uGvqL&GS~v4F@qk10T_d13mA%kvL!&A#8AqR23BDL hlr>^71(JpgAT`B6*;1g&Vunnh8D&s&jDYf{3;^815eEPO delta 7 OcmZ3%evEB{8#4e4UIKLh From eed226b04cfbc08aab6648f8dcc59f9d5c66b923 Mon Sep 17 00:00:00 2001 From: shuaikangzhou <863909694@qq.com> Date: Wed, 6 Dec 2023 20:50:32 +0800 Subject: [PATCH 4/9] =?UTF-8?q?=E4=BC=98=E5=8C=96=E8=81=8A=E5=A4=A9?= =?UTF-8?q?=E8=AE=B0=E5=BD=95=E6=96=87=E4=BB=B6=E7=9A=84=E5=AD=98=E5=82=A8?= =?UTF-8?q?=E7=BB=93=E6=9E=84=20#81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/DataBase/output_pc.py | 128 ++++++++++++++++++++++++++++++++++++-- app/util/path.py | 17 +++-- readme.md | 3 +- requirements_pc.txt | 1 + 4 files changed, 138 insertions(+), 11 deletions(-) diff --git a/app/DataBase/output_pc.py b/app/DataBase/output_pc.py index 36c0756..77f0adf 100644 --- a/app/DataBase/output_pc.py +++ b/app/DataBase/output_pc.py @@ -8,11 +8,20 @@ from . import msg_db from .package_msg import PackageMsg from ..DataBase import hard_link_db from ..person_pc import MePC -from ..util import get_abs_path +from ..util import path os.makedirs('./data/聊天记录', exist_ok=True) +def makedirs(path): + os.makedirs(path,exist_ok=True) + os.makedirs(os.path.join(path, 'image'), exist_ok=True) + os.makedirs(os.path.join(path, 'emoji'), exist_ok=True) + os.makedirs(os.path.join(path, 'video'), exist_ok=True) + os.makedirs(os.path.join(path, 'voice'), exist_ok=True) + os.makedirs(os.path.join(path, 'file'), exist_ok=True) + + def escape_js_and_html(input_str): # 转义HTML特殊字符 html_escaped = html.escape(input_str, quote=False) @@ -439,7 +448,7 @@ class ChildThread(QThread): def to_html_(self): origin_docx_path = f"{os.path.abspath('.')}/data/聊天记录/{self.contact.remark}" - os.makedirs(origin_docx_path, exist_ok=True) + makedirs(origin_docx_path) messages = msg_db.get_messages(self.contact.wxid) filename = f"{os.path.abspath('.')}/data/聊天记录/{self.contact.remark}/{self.contact.remark}.html" f = open(filename, 'w', encoding='utf-8') @@ -735,7 +744,115 @@ const chatMessages = [ MePC().avatar.save(os.path.join(origin_docx_path, 'myhead.png')) self.contact.avatar.save(os.path.join(origin_docx_path, 'tahead.png')) self.rangeSignal.emit(len(messages)) - emoji = {'[微笑]': '', '[撇嘴]': '', '[色]': '', '[发呆]': '', '[得意]': '', '[流泪]': '', '[害羞]': '', '[闭嘴]': '', '[睡]': '', '[大哭]': '', '[尴尬]': '', '[发怒]': '', '[调皮]': '', '[呲牙]': '', '[惊讶]': '', '[难过]': '', '[抓狂]': '', '[吐]': '', '[偷笑]': '', '[愉快]': '', '[白眼]': '', '[傲慢]': '', '[困]': '', '[惊恐]': '', '[憨笑]': '', '[悠闲]': '', '[咒骂]': '', '[疑问]': '', '[嘘]': '', '[晕]': '', '[衰]': '', '[骷髅]': '', '[敲打]': '', '[再见]': '', '[擦汗]': '', '[抠鼻]': '', '[鼓掌]': '', '[坏笑]': '', '[右哼哼]': '', '[鄙视]': '', '[委屈]': '', '[快哭了]': '', '[阴险]': '', '[亲亲]': '', '[可怜]': '', '[笑脸]': '', '[生病]': '', '[脸红]': '', '[破涕为笑]': '', '[恐惧]': '', '[失望]': '', '[无语]': '', '[嘿哈]': '', '[捂脸]': '', '[奸笑]': '', '[机智]': '', '[皱眉]': '', '[耶]': '', '[吃瓜]': '', '[加油]': '', '[汗]': '', '[天啊]': '', '[Emm]': '', '[社会社会]': '', '[旺柴]': '', '[好的]': '', '[打脸]': '', '[哇]': '', '[翻白眼]': '', '[666]': '', '[让我看看]': '', '[叹气]': '', '[苦涩]': '', '[裂开]': '', '[嘴唇]': '', '[爱心]': '', '[心碎]': '', '[拥抱]': '', '[强]': '', '[弱]': '', '[握手]': '', '[胜利]': '', '[抱拳]': '', '[勾引]': '', '[拳头]': '', '[OK]': '', '[合十]': '', '[啤酒]': '', '[咖啡]': '', '[蛋糕]': '', '[玫瑰]': '', '[凋谢]': '', '[菜刀]': '', '[炸弹]': '', '[便便]': '', '[月亮]': '', '[太阳]': '', '[庆 祝]': '', '[礼物]': '', '[红包]': '', '[發]': '', '[福]': '', '[烟花]': '', '[爆竹]': '', '[猪头]': '', '[跳跳]': '', '[发抖]': '', '[转圈]': ''} + emoji = { + '[微笑]': '', + '[撇嘴]': '', + '[色]': '', + '[发呆]': '', + '[得意]': '', + '[流泪]': '', + '[害羞]': '', + '[闭嘴]': '', + '[睡]': '', + '[大哭]': '', + '[尴尬]': '', + '[发怒]': '', + '[调皮]': '', + '[呲牙]': '', + '[惊讶]': '', + '[难过]': '', + '[抓狂]': '', + '[吐]': '', + '[偷笑]': '', + '[愉快]': '', + '[白眼]': '', + '[傲慢]': '', + '[困]': '', + '[惊恐]': '', + '[憨笑]': '', + '[悠闲]': '', + '[咒骂]': '', + '[疑问]': '', + '[嘘]': '', + '[晕]': '', + '[衰]': '', + '[骷髅]': '', + '[敲打]': '', + '[再见]': '', + '[擦汗]': '', + '[抠鼻]': '', + '[鼓掌]': '', + '[坏笑]': '', + '[右哼哼]': '', + '[鄙视]': '', + '[委屈]': '', + '[快哭了]': '', + '[阴险]': '', + '[亲亲]': '', + '[可怜]': '', + '[笑脸]': '', + '[生病]': '', + '[脸红]': '', + '[破涕为笑]': '', + '[恐惧]': '', + '[失望]': '', + '[无语]': '', + '[嘿哈]': '', + '[捂脸]': '', + '[奸笑]': '', + '[机智]': '', + '[皱眉]': '', + '[耶]': '', + '[吃瓜]': '', + '[加油]': '', + '[汗]': '', + '[天啊]': '', + '[Emm]': '', + '[社会社会]': '', + '[旺柴]': '', + '[好的]': '', + '[打脸]': '', + '[哇]': '', + '[翻白眼]': '', + '[666]': '', + '[让我看看]': '', + '[叹气]': '', + '[苦涩]': '', + '[裂开]': '', + '[嘴唇]': '', + '[爱心]': '', + '[心碎]': '', + '[拥抱]': '', + '[强]': '', + '[弱]': '', + '[握手]': '', + '[胜利]': '', + '[抱拳]': '', + '[勾引]': '', + '[拳头]': '', + '[OK]': '', + '[合十]': '', + '[啤酒]': '', + '[咖啡]': '', + '[蛋糕]': '', + '[玫瑰]': '', + '[凋谢]': '', + '[菜刀]': '', + '[炸弹]': '', + '[便便]': '', + '[月亮]': '', + '[太阳]': '', + '[庆 祝]': '', + '[礼物]': '', + '[红包]': '', + '[發]': '', + '[福]': '', + '[烟花]': '', + '[爆竹]': '', + '[猪头]': '', + '[跳跳]': '', + '[发抖]': '', + '[转圈]': ''} from re import findall for index, message in enumerate(messages): type_ = message[2] @@ -754,7 +871,7 @@ const chatMessages = [ f.write( f'''{{ type:0, text: '{str_time}',is_send:0,avatar_path:''}},''' ) - + emojiText = findall(r"(\[.+?\])", str_content) for emoji_text in emojiText: if emoji_text in emoji: @@ -772,9 +889,8 @@ const chatMessages = [ match = re.search(pattern2, str_content) if match: continue - image_path = hard_link_db.get_image(content=str_content, thumb=False) - image_path = get_abs_path(image_path) + image_path = path.get_relative_path(image_path, base_path=f'./data/聊天记录/{self.contact.remark}/image') image_path = image_path.replace('\\', '/') # print(f"tohtml:---{image_path}") if self.is_5_min(timestamp): diff --git a/app/util/path.py b/app/util/path.py index f174866..2b80bc9 100644 --- a/app/util/path.py +++ b/app/util/path.py @@ -7,16 +7,26 @@ from app.util import dat2pic os.makedirs('./data/image', exist_ok=True) -def get_abs_path(path): +def get_abs_path(path, base_path="/data/image"): # return os.path.join(os.getcwd(), 'app/data/icons/404.png') if path: - base_path = os.getcwd() + "/data/image" - output_path = dat2pic.decode_dat(os.path.join(MePC().wx_dir, path), base_path) # './data/image') + base_path = os.getcwd() + base_path + output_path = dat2pic.decode_dat(os.path.join(MePC().wx_dir, path), base_path) return output_path if output_path else ':/icons/icons/404.png' else: return ':/icons/icons/404.png' +def get_relative_path(path, base_path): + if path: + base_path = os.getcwd() + base_path + output_path = dat2pic.decode_dat(os.path.join(MePC().wx_dir, path), base_path) + relative_path = './image/'+os.path.basename(output_path) if output_path else 'https://www.bing.com/images/search?view=detailV2&ccid=Zww6woP3&id=CCC91337C740656E800E51247E928ACD3052FECF&thid=OIP.Zww6woP3Em49TdSG_lnggAHaEK&mediaurl=https%3a%2f%2fmeekcitizen.files.wordpress.com%2f2018%2f09%2f404.jpg%3fw%3d656&exph=360&expw=640&q=404&simid=608040792714530493&FORM=IRPRST&ck=151E7337A86F1B9C5C5DB08B15B90809&selectedIndex=21&itb=0' + return relative_path + else: + return ':/icons/icons/404.png' + + def mkdir(path): if not os.path.exists(path): os.mkdir(path) @@ -44,4 +54,3 @@ def wx_path(): return wx_location except FileNotFoundError: return '.' - diff --git a/readme.md b/readme.md index c2b004f..2e9cf06 100644 --- a/readme.md +++ b/readme.md @@ -294,7 +294,8 @@ python main.py --- -> 声明:该项目有且仅有一个目的:“留痕”——我的数据我做主,前提是“我的数据”其次才是“我做主”,禁止任何人以任何形式将其用于任何非法用途,对于使用该程序所造成的任何后果,所有创作者不承担任何责任🙄 +> 声明:该项目有且仅有一个目的:“留痕”——我的数据我做主,前提是“我的数据”其次才是“我做主”,禁止任何人以任何形式将其用于任何非法用途,对于使用该程序所造成的任何后果,所有创作者不承担任何责任🙄
+> 该软件不会对您使用的微信造成任何影响,更不会对他人的微信造成任何影响,任何企图篡改微信聊天数据的想法都是无稽之谈。本项目所有功能均建立在”前言“的基础之上,基于该项目的所有开发者均不能接受任何有悖于”前言“的功能需求,违者后果自负。 [![Star History Chart](https://api.star-history.com/svg?repos=LC044/WeChatMsg&type=Date)](https://star-history.com/?utm_source=bestxtools.com#LC044/WeChatMsg&Date) diff --git a/requirements_pc.txt b/requirements_pc.txt index 9016df1..85927c4 100644 --- a/requirements_pc.txt +++ b/requirements_pc.txt @@ -12,3 +12,4 @@ requests flask==3.0.0 pyecharts==2.0.1 jieba==0.42.1 +protobuf==4.25.1 From b3745867c654a3574960dd1dc35c67483269dee7 Mon Sep 17 00:00:00 2001 From: shuaikangzhou <863909694@qq.com> Date: Wed, 6 Dec 2023 20:58:08 +0800 Subject: [PATCH 5/9] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E5=81=9C=E7=94=A8?= =?UTF-8?q?=E8=AF=8D=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/config.py | 3 +- app/resources/stopwords.txt | 2560 +++++++++++++++++++++++++++++++++++ chat_window1.png | Bin 181997 -> 0 bytes main_pc.py | 4 +- 4 files changed, 2564 insertions(+), 3 deletions(-) create mode 100644 app/resources/stopwords.txt delete mode 100644 chat_window1.png diff --git a/app/config.py b/app/config.py index fd1d898..189cc0e 100644 --- a/app/config.py +++ b/app/config.py @@ -1,8 +1,9 @@ -version = '0.2.6' +version = '0.2.7' contact = '474379264' description = [ '1. 支持获取个人信息
', '2. 支持显示聊天界面
', '3. 支持导出聊天记录
    * csv
    * html
', '4. 查找联系人
', + '5. 生成年度报告
', ] diff --git a/app/resources/stopwords.txt b/app/resources/stopwords.txt new file mode 100644 index 0000000..11fe11b --- /dev/null +++ b/app/resources/stopwords.txt @@ -0,0 +1,2560 @@ +wxid +就 +说 +啥 +好 +干 +哦 +好 +嗯 +恩 +噢 +喔 +行 +拿 +你 +裂开 +苦涩 +叹气 +让我看看 +酷 +奋斗 +疑问 +擦汗 +抠鼻 +鄙视 +勾引 +奸笑 +嘿哈 +捂脸 +机智 +加油 +吃瓜 +尴尬 +乡村 +炸弹 +腹肌 +徐坤 +振兴 +着力 +努力 +注重 +提供 +意义 +习近平 +加快 +实施 +参与 +带动 +带领 +方式 +力量 +主体 +矛盾 +切实 +进一步 +已经 +价值 +成为 +拓展 +保障 +面临 +国家 +中国 +推进 +推动 +世界 +战略 +维护 +强化 +贯彻 +治理 +增强 +健全 +确保 +开展 +老婆 +坚持 +体系 +建设 +在 +对 +我国 +实现 +提高 +统筹 +完善 +工作 +领导 +深化 +构建 +作用 +支持 +弘扬 +指导 +形成 +思想 +把握 +提出 +! +" +# +$ +% +& +' +( +) +* ++ +, +- +-- +. +.. +... +...... +................... +./ +.一 +.数 +.日 +/ +// +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +: +:// +:: +; +< += +> +>> +? +@ +A +Lex +[ +\ +] +^ +_ +` +exp +sub +sup +| +} +~ +~~~~ +· +× +××× +Δ +Ψ +γ +μ +φ +φ. +В +— +—— +——— +‘ +’ +’‘ +“ +” +”, +… +…… +…………………………………………………③ +′∈ +′| +℃ +Ⅲ +↑ +→ +∈[ +∪φ∈ +≈ +① +② +②c +③ +③] +④ +⑤ +⑥ +⑦ +⑧ +⑨ +⑩ +── +■ +▲ +  +、 +。 +〈 +〉 +《 +》 +》), +」 +『 +』 +【 +】 +〔 +〕 +〕〔 +㈧ +一 +一. +一一 +一下 +一个 +一些 +一何 +一切 +一则 +一则通过 +一天 +一定 +一方面 +一旦 +一时 +一来 +一样 +一次 +一片 +一番 +一直 +一致 +一般 +一起 +一转眼 +一边 +一面 +七 +万一 +三 +三天两头 +三番两次 +三番五次 +上 +上下 +上升 +上去 +上来 +上述 +上面 +下 +下列 +下去 +下来 +下面 +不 +不一 +不下 +不久 +不了 +不亦乐乎 +不仅 +不仅...而且 +不仅仅 +不仅仅是 +不会 +不但 +不但...而且 +不光 +不免 +不再 +不力 +不单 +不变 +不只 +不可 +不可开交 +不可抗拒 +不同 +不外 +不外乎 +不够 +不大 +不如 +不妨 +不定 +不对 +不少 +不尽 +不尽然 +不巧 +不已 +不常 +不得 +不得不 +不得了 +不得已 +不必 +不怎么 +不怕 +不惟 +不成 +不拘 +不择手段 +不敢 +不料 +不断 +不日 +不时 +不是 +不曾 +不止 +不止一次 +不比 +不消 +不满 +不然 +不然的话 +不特 +不独 +不由得 +不知不觉 +不管 +不管怎样 +不经意 +不胜 +不能 +不能不 +不至于 +不若 +不要 +不论 +不起 +不足 +不过 +不迭 +不问 +不限 +与 +与其 +与其说 +与否 +与此同时 +专门 +且 +且不说 +且说 +两者 +严格 +严重 +个 +个人 +个别 +中小 +中间 +丰富 +串行 +临 +临到 +为 +为主 +为了 +为什么 +为什麽 +为何 +为止 +为此 +为着 +主张 +主要 +举凡 +举行 +乃 +乃至 +乃至于 +么 +之 +之一 +之前 +之后 +之後 +之所以 +之类 +乌乎 +乎 +乒 +乘 +乘势 +乘机 +乘胜 +乘虚 +乘隙 +九 +也 +也好 +也就是说 +也是 +也罢 +了 +了解 +争取 +二 +二来 +二话不说 +二话没说 +于 +于是 +于是乎 +云云 +云尔 +互 +互相 +五 +些 +交口 +亦 +产生 +亲口 +亲手 +亲眼 +亲自 +亲身 +人 +人人 +人们 +人家 +人民 +什么 +什么样 +什麽 +仅 +仅仅 +今 +今后 +今天 +今年 +今後 +介于 +仍 +仍旧 +仍然 +从 +从不 +从严 +从中 +从事 +从今以后 +从优 +从古到今 +从古至今 +从头 +从宽 +从小 +从新 +从无到有 +从早到晚 +从未 +从来 +从此 +从此以后 +从而 +从轻 +从速 +从重 +他 +他人 +他们 +他是 +他的 +代替 +以 +以上 +以下 +以为 +以便 +以免 +以前 +以及 +以后 +以外 +以後 +以故 +以期 +以来 +以至 +以至于 +以致 +们 +任 +任何 +任凭 +任务 +企图 +伙同 +会 +伟大 +传 +传说 +传闻 +似乎 +似的 +但 +但凡 +但愿 +但是 +何 +何乐而不为 +何以 +何况 +何处 +何妨 +何尝 +何必 +何时 +何止 +何苦 +何须 +余外 +作为 +你 +你们 +你是 +你的 +使 +使得 +使用 +例如 +依 +依据 +依照 +依靠 +便 +便于 +促进 +保持 +保管 +保险 +俺 +俺们 +倍加 +倍感 +倒不如 +倒不如说 +倒是 +倘 +倘使 +倘或 +倘然 +倘若 +借 +借以 +借此 +假使 +假如 +假若 +偏偏 +做到 +偶尔 +偶而 +傥然 +像 +儿 +允许 +元/吨 +充其极 +充其量 +充分 +先不先 +先后 +先後 +先生 +光 +光是 +全体 +全力 +全年 +全然 +全身心 +全部 +全都 +全面 +八 +八成 +公然 +六 +兮 +共 +共同 +共总 +关于 +其 +其一 +其中 +其二 +其他 +其余 +其后 +其它 +其实 +其次 +具体 +具体地说 +具体来说 +具体说来 +具有 +兼之 +内 +再 +再其次 +再则 +再有 +再次 +再者 +再者说 +再说 +冒 +冲 +决不 +决定 +决非 +况且 +准备 +凑巧 +凝神 +几 +几乎 +几度 +几时 +几番 +几经 +凡 +凡是 +凭 +凭借 +出 +出于 +出去 +出来 +出现 +分别 +分头 +分期 +分期分批 +切 +切不可 +切切 +切勿 +切莫 +则 +则甚 +刚 +刚好 +刚巧 +刚才 +初 +别 +别人 +别处 +别是 +别的 +别管 +别说 +到 +到了儿 +到处 +到头 +到头来 +到底 +到目前为止 +前后 +前此 +前者 +前进 +前面 +加上 +加之 +加以 +加入 +加强 +动不动 +动辄 +勃然 +匆匆 +十分 +千 +千万 +千万千万 +半 +单 +单单 +单纯 +即 +即令 +即使 +即便 +即刻 +即如 +即将 +即或 +即是说 +即若 +却 +却不 +历 +原来 +去 +又 +又及 +及 +及其 +及时 +及至 +双方 +反之 +反之亦然 +反之则 +反倒 +反倒是 +反应 +反手 +反映 +反而 +反过来 +反过来说 +取得 +取道 +受到 +变成 +古来 +另 +另一个 +另一方面 +另外 +另悉 +另方面 +另行 +只 +只当 +只怕 +只是 +只有 +只消 +只要 +只限 +叫 +叫做 +召开 +叮咚 +叮当 +可 +可以 +可好 +可是 +可能 +可见 +各 +各个 +各人 +各位 +各地 +各式 +各种 +各级 +各自 +合理 +同 +同一 +同时 +同样 +后 +后来 +后者 +后面 +向 +向使 +向着 +吓 +吗 +否则 +吧 +吧哒 +吱 +呀 +呃 +呆呆地 +呐 +呕 +呗 +呜 +呜呼 +呢 +周围 +呵 +呵呵 +呸 +呼哧 +呼啦 +咋 +和 +咚 +咦 +咧 + +敢 +敢于 +敢情 +数/ +整个 +断然 +方 +方便 +方才 +方能 +方面 +旁人 +无 +无宁 +无法 +无论 +既 +既...又 +既往 +既是 +既然 +日复一日 +日渐 +日益 +日臻 +日见 +时候 +昂然 +明显 +明确 +是 +是不是 +是以 +是否 +是的 +显然 +显著 +普通 +普遍 +暗中 +暗地里 +暗自 +更 +更为 +更加 +更进一步 +曾 +曾经 +替 +替代 +最 +最后 +最大 +最好 +最後 +最近 +最高 +有 +有些 +有关 +有利 +有力 +有及 +有所 +有效 +有时 +有点 +有的 +有的是 +有着 +有著 +望 +朝 +朝着 +末##末 +本 +本人 +本地 +本着 +本身 +权时 +来 +来不及 +来得及 +来看 +来着 +来自 +来讲 +来说 +极 +极为 +极了 +极其 +极力 +极大 +极度 +极端 +构成 +果然 +果真 +某 +某个 +某些 +某某 +根据 +根本 +格外 +梆 +概 +次第 +欢迎 +欤 +正值 +正在 +正如 +正巧 +正常 +正是 +此 +此中 +此后 +此地 +此处 +此外 +此时 +此次 +此间 +殆 +毋宁 +每 +每个 +每天 +每年 +每当 +每时每刻 +每每 +每逢 +比 +比及 +比如 +比如说 +比方 +比照 +比起 +比较 +毕竟 +毫不 +毫无 +毫无例外 +毫无保留地 +汝 +沙沙 +没 +没奈何 +没有 +沿 +沿着 +注意 +活 +深入 +清楚 +满 +满足 +漫说 +焉 +然 +然则 +然后 +然後 +然而 +照 +照着 +牢牢 +特别是 +特殊 +特点 +犹且 +犹自 +独 +独自 +猛然 +猛然间 +率尔 +率然 +现代 +现在 +理应 +理当 +理该 +瑟瑟 +甚且 +甚么 +甚或 +甚而 +甚至 +甚至于 +用 +用来 +甫 +甭 +由 +由于 +由是 +由此 +由此可见 +略 +略为 +略加 +略微 +白 +白白 +的 +的确 +的话 +皆可 +目前 +直到 +直接 +相似 +相信 +相反 +相同 +相对 +相对而言 +相应 +相当 +相等 +省得 +看 +看上去 +看出 +看到 +看来 +看样子 +看看 +看见 +看起来 +真是 +真正 +眨眼 +着 +着呢 +矣 +矣乎 +矣哉 +知道 +砰 +确定 +碰巧 +社会主义 +离 +种 +积极 +移动 +究竟 +穷年累月 +突出 +突然 +窃 +立 +立刻 +立即 +立地 +立时 +立马 +竟 +竟然 +竟而 +第 +第二 +等 +等到 +等等 +策略地 +简直 +简而言之 +简言之 +管 +类如 +粗 +精光 +紧接着 +累年 +累次 +纯 +纯粹 +纵 +纵令 +纵使 +纵然 +练习 +组成 +经 +经常 +经过 +结合 +结果 +给 +绝 +绝不 +绝对 +绝非 +绝顶 +继之 +继后 +继续 +继而 +维持 +综上所述 +缕缕 +罢了 +老 +老大 +老是 +老老实实 +考虑 +者 +而 +而且 +而况 +而又 +而后 +而外 +而已 +而是 +而言 +而论 +联系 +联袂 +背地里 +背靠背 +能 +能否 +能够 +腾 +自 +自个儿 +自从 +自各儿 +自后 +自家 +自己 +自打 +自身 +臭 +至 +至于 +至今 +至若 +致 +般的 +良好 +若 +若夫 +若是 +若果 +若非 +范围 +莫 +莫不 +莫不然 +莫如 +莫若 +莫非 +获得 +藉以 +虽 +虽则 +虽然 +虽说 +蛮 +行为 +行动 +表明 +表示 +被 +要 +要不 +要不是 +要不然 +要么 +要是 +要求 +见 +规定 +觉得 +譬喻 +譬如 +认为 +认真 +认识 +让 +许多 +论 +论说 +设使 +设或 +设若 +诚如 +诚然 +话说 +该 +该当 +说明 +说来 +说说 +请勿 +诸 +诸位 +诸如 +谁 +谁人 +谁料 +谁知 +谨 +豁然 +贼死 +赖以 +赶 +赶快 +赶早不赶晚 +起 +起先 +起初 +起头 +起来 +起见 +起首 +趁 +趁便 +趁势 +趁早 +趁机 +趁热 +趁着 +越是 +距 +跟 +路经 +转动 +转变 +转贴 +轰然 +较 +较为 +较之 +较比 +边 +达到 +达旦 +迄 +迅速 +过 +过于 +过去 +过来 +运用 +近 +近几年来 +近年来 +近来 +还 +还是 +还有 +还要 +这 +这一来 +这个 +这么 +这么些 +这么样 +这么点儿 +这些 +这会儿 +这儿 +这就是说 +这时 +这样 +这次 +这点 +这种 +这般 +这边 +这里 +这麽 +进入 +进去 +进来 +进步 +进而 +进行 +连 +连同 +连声 +连日 +连日来 +连袂 +连连 +迟早 +迫于 +适应 +适当 +适用 +逐步 +逐渐 +通常 +通过 +造成 +逢 +遇到 +遭到 +遵循 +遵照 +避免 +那 +那个 +那么 +那么些 +那么样 +那些 +那会儿 +那儿 +那时 +那末 +那样 +那般 +那边 +那里 +那麽 +部分 +都 +鄙人 +采取 +里面 +重大 +重新 +重要 +鉴于 +针对 +长期以来 +长此下去 +长线 +长话短说 +问题 +间或 +防止 +阿 +附近 +陈年 +限制 +陡然 +除 +除了 +除却 +除去 +除外 +除开 +除此 +除此之外 +除此以外 +除此而外 +除非 +随 +随后 +随时 +随着 +随著 +隔夜 +隔日 +难得 +难怪 +难说 +难道 +难道说 +集中 +零 +需要 +非但 +非常 +非徒 +非得 +非特 +非独 +靠 +顶多 +顷 +顷刻 +顷刻之间 +顷刻间 +顺 +顺着 +顿时 +颇 +风雨无阻 +饱 +首先 +马上 +高低 +高兴 +默然 +默默地 +齐 +︿ +! +# +$ +% +& +' +( +) +)÷(1- +)、 +* ++ ++ξ +++ +, +,也 +- +-β +-- +-[*]- +. +/ +0 +0:2 +1 +1. +12% +2 +2.3% +3 +4 +5 +5:0 +6 +7 +8 +9 +: +; +< +<± +<Δ +<λ +<φ +<< += +=″ +=☆ +=( +=- +=[ +={ +> +>λ +? +@ +A +LI +R.L. +ZXFITL +[ +[①①] +[①②] +[①③] +[①④] +[①⑤] +[①⑥] +[①⑦] +[①⑧] +[①⑨] +[①A] +[①B] +[①C] +[①D] +[①E] +[①] +[①a] +[①c] +[①d] +[①e] +[①f] +[①g] +[①h] +[①i] +[①o] +[② +[②①] +[②②] +[②③] +[②④ +[②⑤] +[②⑥] +[②⑦] +[②⑧] +[②⑩] +[②B] +[②G] +[②] +[②a] +[②b] +[②c] +[②d] +[②e] +[②f] +[②g] +[②h] +[②i] +[②j] +[③①] +[③⑩] +[③F] +[③] +[③a] +[③b] +[③c] +[③d] +[③e] +[③g] +[③h] +[④] +[④a] +[④b] +[④c] +[④d] +[④e] +[⑤] +[⑤]] +[⑤a] +[⑤b] +[⑤d] +[⑤e] +[⑤f] +[⑥] +[⑦] +[⑧] +[⑨] +[⑩] +[*] +[- +[] +] +]∧′=[ +][ +_ +a] +b] +c] +e] +f] +ng昉 +{ +{- +| +} +}> +~ +~± +~+ +¥ +打开天窗说亮话 +到目前为止 +赶早不赶晚 +常言说得好 +何乐而不为 +毫无保留地 +由此可见 +这就是说 +这么点儿 +综上所述 +总的来看 +总的来说 +总的说来 +总而言之 +相对而言 +除此之外 +反过来说 +恰恰相反 +如上所述 +换句话说 +具体地说 +具体说来 +另一方面 +与此同时 +一则通过 +毫无例外 +不然的话 +从此以后 +从古到今 +从古至今 +从今以后 +大张旗鼓 +从无到有 +从早到晚 +弹指之间 +不亦乐乎 +不知不觉 +不止一次 +不择手段 +不可开交 +不可抗拒 +不仅仅是 +不管怎样 +挨家挨户 +长此下去 +长话短说 +除此而外 +除此以外 +除此之外 +得天独厚 +川流不息 +长期以来 +挨门挨户 +挨门逐户 +多多少少 +多多益善 +二话不说 +更进一步 +二话没说 +分期分批 +风雨无阻 +归根到底 +归根结底 +反之亦然 +大面儿上 +倒不如说 +成年累月 +换句话说 +或多或少 +简而言之 +接连不断 +尽如人意 +尽心竭力 +尽心尽力 +尽管如此 +据我所知 +具体地说 +具体来说 +具体说来 +近几年来 +每时每刻 +屡次三番 +三番两次 +三番五次 +三天两头 +另一方面 +老老实实 +年复一年 +恰恰相反 +顷刻之间 +穷年累月 +千万千万 +日复一日 +如此等等 +如前所述 +如上所述 +一方面 +切不可 +顷刻间 +全身心 +另方面 +另一个 +猛然间 +默默地 +就是说 +近年来 +尽可能 +接下来 +简言之 +急匆匆 +即是说 +基本上 +换言之 +充其极 +充其量 +暗地里 +反之则 +比如说 +背地里 +背靠背 +并没有 +不得不 +不得了 +不得已 +不仅仅 +不经意 +不能不 +不外乎 +不由得 +不怎么 +不至于 +策略地 +差不多 +常言道 +常言说 +多年来 +多年前 +差一点 +敞开儿 +抽冷子 +大不了 +反倒是 +反过来 +大体上 +当口儿 +倒不如 +怪不得 +动不动 +看起来 +看上去 +看样子 +够瞧的 +到了儿 +呆呆地 +来不及 +来得及 +到头来 +连日来 +于是乎 +为什么 +这会儿 +换言之 +那会儿 +那么些 +那么样 +什么样 +反过来 +紧接着 +就是说 +要不然 +要不是 +一方面 +以至于 +自个儿 +自各儿 +之所以 +这么些 +这么样 +怎么办 +怎么样 +谁知 +顺着 +似的 +虽然 +虽说 +虽则 +随着 +所以 +他们 +他人 +它们 +她们 +倘或 +倘然 +倘若 +倘使 +要么 +要是 +也罢 +也好 +以便 +依照 +以及 +以免 +以至 +以致 +抑或 +因此 +因而 +因为 +由于 +有的 +有关 +有些 +于是 +与否 +与其 +越是 +云云 +一般 +一旦 +一来 +一切 +一样 +同时 +万一 +为何 +为了 +为着 +嗡嗡 +我们 +呜呼 +乌乎 +无论 +无宁 +沿着 +毋宁 +向着 +照着 +怎么 +咱们 +在下 +再说 +再者 +怎样 +这边 +这儿 +这个 +这里 +这么 +这时 +这些 +这样 +正如 +之类 +之一 +只是 +只限 +只要 +只有 +至于 +诸位 +着呢 +纵令 +纵然 +纵使 +遵照 +作为 +喔唷 +自从 +自己 +自家 +自身 +总之 +要不 +哎呀 +哎哟 +俺们 +按照 +吧哒 +罢了 +本着 +比方 +比如 +鄙人 +彼此 +别的 +别说 +并且 +不比 +不成 +不单 +不但 +不独 +不管 +不光 +不过 +不仅 +不拘 +不论 +不怕 +不然 +不如 +不特 +不惟 +不问 +不只 +朝着 +趁着 +除非 +除了 +此间 +此外 +从而 +但是 +当着 +的话 +等等 +叮咚 +对于 +多少 +而况 +而且 +而是 +而外 +而言 +而已 +尔后 +反之 +非但 +非徒 +否则 +嘎登 +各个 +各位 +各种 +各自 +根据 +故此 +固然 +关于 +果然 +果真 +哈哈 +何处 +何况 +何时 +哼唷 +呼哧 +还是 +还有 +或是 +或者 +极了 +及其 +及至 +即便 +即或 +即令 +即若 +即使 +既然 +既是 +继而 +加之 +假如 +假若 +假使 +鉴于 +几时 +较之 +接着 +结果 +进而 +尽管 +经过 +就是 +可见 +可是 +可以 +况且 +开始 +开外 +来着 +例如 +连同 +两者 +另外 +慢说 +漫说 +每当 +莫若 +某个 +某些 +哪边 +哪儿 +哪个 +哪里 +哪年 +哪怕 +哪天 +哪些 +哪样 +那边 +那儿 +那个 +那里 +那么 +那时 +那些 +那样 +乃至 +宁可 +宁肯 +宁愿 +你们 +啪达 +旁人 +凭借 +其次 +其二 +其他 +其它 +其一 +其余 +其中 +起见 +起见 +岂但 +前后 +前者 +然而 +然后 +然则 +人家 +任何 +任凭 +如此 +如果 +如何 +如其 +如若 +若非 +若是 +上下 +尚且 +设若 +设使 +甚而 +甚么 +甚至 +省得 +时候 +什么 +使得 +是的 +首先 +首先 +其次 +再次 +最后 +您们 +它们 +她们 +他们 +我们 +你是 +您是 +我是 +他是 +她是 +它是 +不是 +你们 +啊哈 +啊呀 +啊哟 +挨次 +挨个 +挨着 +哎呀 +哎哟 +俺们 +按理 +按期 +默然 +按时 +按说 +按照 +暗中 +暗自 +昂然 +八成 +倍感 +倍加 +本人 +本身 +本着 +并非 +别人 +必定 +比起 +比如 +比照 +鄙人 +毕竟 +必将 +必须 +并肩 +并没 +并排 +并且 +并无 +勃然 +不必 +不常 +不大 +不单 +不但 +而且 +不得 +不迭 +不定 +不独 +不对 +不妨 +不管 +不光 +不过 +不会 +不仅 +不拘 +不力 +不了 +不料 +不论 +不满 +不免 +不起 +不巧 +不然 +不日 +不少 +不胜 +不时 +不是 +不同 +不能 +不要 +不外 +不下 +不限 +不消 +不已 +不再 +不曾 +不止 +不只 +才能 +彻夜 +趁便 +趁机 +趁热 +趁势 +趁早 +趁着 +成心 +乘机 +乘势 +乘隙 +乘虚 +诚然 +迟早 +充分 +出来 +出去 +除此 +除非 +除开 +除了 +除去 +除却 +除外 +处处 +传说 +传闻 +纯粹 +此后 +此间 +此外 +此中 +次第 +匆匆 +从不 +从此 +从而 +从宽 +从来 +从轻 +从速 +从头 +从未 +从小 +从新 +从严 +从优 +从中 +从重 +凑巧 +存心 +达旦 +打从 +大大 +大抵 +大都 +大多 +大凡 +大概 +大家 +大举 +大略 +大约 +大致 +待到 +单纯 +单单 +但是 +但愿 +当场 +当儿 +当即 +当然 +当庭 +当头 +当下 +当真 +当中 +当着 +倒是 +到处 +到底 +到头 +得起 +的话 +的确 +等到 +等等 +顶多 +动辄 +陡然 +独自 +断然 +对于 +顿时 +多次 +多多 +多亏 +而后 +而论 +而且 +而是 +而外 +而言 +而已 +而又 +尔等 +反倒 +反而 +反手 +反之 +方才 +方能 +非常 +非但 +非得 +分头 +奋勇 +愤然 +更为 +更加 +根据 +个人 +各式 +刚才 +敢情 +该当 +嘎嘎 +否则 +赶快 +敢于 +刚好 +刚巧 +高低 +格外 +隔日 +隔夜 +公然 +过于 +果然 +果真 +光是 +关于 +共总 +姑且 +故此 +故而 +故意 +固然 +惯常 +毫不 +毫无 +很多 +何须 +好在 +何必 +何尝 +何妨 +何苦 +何况 +何止 +很少 +轰然 +后来 +呼啦 +哗啦 +互相 +忽地 +忽然 +话说 +或是 +伙同 +豁然 +恍然 +还是 +或许 +或者 +基本 +基于 +极大 +极度 +极端 +极力 +极其 +极为 +即便 +即将 +及其 +及至 +即刻 +即令 +即使 +几度 +几番 +几乎 +几经 +既然 +继而 +继之 +加上 +加以 +加之 +假如 +假若 +假使 +间或 +将才 +简直 +鉴于 +将近 +将要 +交口 +较比 +较为 +较之 +皆可 +截然 +截至 +藉以 +借此 +借以 +届时 +尽快 +近来 +进而 +进来 +进去 +尽管 +尽量 +尽然 +就算 +居然 +就此 +就地 +竟然 +究竟 +经常 +尽早 +精光 +经过 +就是 +局外 +举凡 +据称 +据此 +据实 +据说 +可好 +看来 +开外 +绝不 +决不 +据悉 +决非 +绝顶 +绝对 +绝非 +可见 +可能 +可是 +可以 +恐怕 +来讲 +来看 +快要 +况且 +拦腰 +牢牢 +老是 +累次 +累年 +理当 +理该 +理应 +例如 +立地 +立刻 +立马 +立时 +联袂 +连连 +连日 +路经 +临到 +连声 +连同 +连袂 +另外 +另行 +屡次 +屡屡 +缕缕 +率尔 +率然 +略加 +略微 +略为 +论说 +马上 +猛然 +没有 +每当 +每逢 +每每 +莫不 +莫非 +莫如 +莫若 +哪怕 +那么 +那末 +那些 +乃至 +难道 +难得 +难怪 +难说 +你们 +凝神 +宁可 +宁肯 +宁愿 +偶而 +偶尔 +碰巧 +譬如 +偏偏 +平素 +迫于 +扑通 +其次 +其后 +其实 +其它 +起初 +起来 +起首 +起头 +起先 +岂但 +岂非 +岂止 +恰逢 +恰好 +恰恰 +恰巧 +恰如 +恰似 +前后 +前者 +切莫 +切切 +切勿 +亲口 +亲身 +亲手 +亲眼 +亲自 +顷刻 +请勿 +取道 +权时 +全都 +全力 +全年 +全然 +然而 +然后 +人家 +人人 +仍旧 +仍然 +日见 +日渐 +日益 +日臻 +如常 +如次 +如果 +如今 +如期 +如若 +如上 +如下 +上来 +上去 +瑟瑟 +沙沙 +啊 +哎 +唉 +俺 +按 +吧 +把 +甭 +别 +嘿 +很 +乎 +会 +或 +既 +及 +啦 +了 +们 +你 +您 +哦 +砰 +啊 +你 +我 +他 +她 +它 +听 +哪 +想 +打 +🙄 +奥 +真 +旺柴 \ No newline at end of file diff --git a/chat_window1.png b/chat_window1.png deleted file mode 100644 index 2325b4e6837217bcf09ec71887cb5b95848dc4c0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 181997 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 Date: Wed, 6 Dec 2023 21:29:12 +0800 Subject: [PATCH 6/9] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=B9=B4=E5=BA=A6?= =?UTF-8?q?=E5=88=86=E6=9E=90=E6=8A=A5=E5=91=8A=E7=AC=AC=E4=BA=8C=E9=A1=B5?= =?UTF-8?q?=E6=BA=A2=E5=87=BA=E7=9A=84=E9=97=AE=E9=A2=98#69?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/DataBase/msg.py | 8 +- app/analysis/analysis.py | 4 +- app/resources/resource_rc.py | 9511 +++++++++++++++++----------------- app/resources/stopwords.txt | 1 + app/web_ui/web.py | 16 +- readme.md | 2 +- requirements_pc.txt | 2 + 7 files changed, 4774 insertions(+), 4770 deletions(-) diff --git a/app/DataBase/msg.py b/app/DataBase/msg.py index 76a2919..a6bdc7e 100644 --- a/app/DataBase/msg.py +++ b/app/DataBase/msg.py @@ -126,19 +126,19 @@ class Msg: lock.release() return result - def get_messages_by_keyword(self, username_, keyword, num=5): + def get_messages_by_keyword(self, username_, keyword, num=5, max_len=10): if not self.open_flag: return None sql = ''' select localId,TalkerId,Type,SubType,IsSender,CreateTime,Status,StrContent,strftime('%Y-%m-%d %H:%M:%S',CreateTime,'unixepoch','localtime') as StrTime,MsgSvrID from MSG - where StrTalker=? and Type=1 and StrContent like ? + where StrTalker=? and Type=1 and LENGTH(StrContent) 声明:该项目有且仅有一个目的:“留痕”——我的数据我做主,前提是“我的数据”其次才是“我做主”,禁止任何人以任何形式将其用于任何非法用途,对于使用该程序所造成的任何后果,所有创作者不承担任何责任🙄
-> 该软件不会对您使用的微信造成任何影响,更不会对他人的微信造成任何影响,任何企图篡改微信聊天数据的想法都是无稽之谈。本项目所有功能均建立在”前言“的基础之上,基于该项目的所有开发者均不能接受任何有悖于”前言“的功能需求,违者后果自负。 +> 该软件不会对您使用的微信造成任何影响,更不会对他人的微信造成任何影响,不能找回删除的聊天记录,任何企图篡改微信聊天数据的想法都是无稽之谈。本项目所有功能均建立在”前言“的基础之上,基于该项目的所有开发者均不能接受任何有悖于”前言“的功能需求,违者后果自负。 [![Star History Chart](https://api.star-history.com/svg?repos=LC044/WeChatMsg&type=Date)](https://star-history.com/?utm_source=bestxtools.com#LC044/WeChatMsg&Date) diff --git a/requirements_pc.txt b/requirements_pc.txt index 85927c4..ed617a2 100644 --- a/requirements_pc.txt +++ b/requirements_pc.txt @@ -12,4 +12,6 @@ requests flask==3.0.0 pyecharts==2.0.1 jieba==0.42.1 +google==3.0.0 protobuf==4.25.1 +soupsieve==2.5 From 4d1d1a631db3d30bfcee73ed9dc71a726388d018 Mon Sep 17 00:00:00 2001 From: shuaikangzhou <863909694@qq.com> Date: Wed, 6 Dec 2023 21:59:23 +0800 Subject: [PATCH 7/9] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=97=A0=E8=81=8A?= =?UTF-8?q?=E5=A4=A9=E6=95=B0=E6=8D=AE=E5=B9=B4=E5=BA=A6=E5=88=86=E6=9E=90?= =?UTF-8?q?=E6=8A=A5=E5=91=8A=E6=8A=A5=E9=94=99=E9=97=AE=E9=A2=98#72?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/analysis/analysis.py | 7 +++++++ app/web_ui/web.py | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/app/analysis/analysis.py b/app/analysis/analysis.py index 263eb48..56aba51 100644 --- a/app/analysis/analysis.py +++ b/app/analysis/analysis.py @@ -19,6 +19,13 @@ wordcloud_height = 720 def wordcloud(wxid): import jieba txt_messages = msg_db.get_messages_by_type(wxid, MsgType.TEXT) + if not txt_messages: + return { + 'chart_data': None, + 'keyword': "没有聊天你想分析啥", + 'max_num': "0", + 'dialogs': [] + } text = ''.join(map(lambda x: x[7], txt_messages)) total_msg_len = len(text) # 使用jieba进行分词,并加入停用词 diff --git a/app/web_ui/web.py b/app/web_ui/web.py index 7ed6d70..5a5c7a6 100644 --- a/app/web_ui/web.py +++ b/app/web_ui/web.py @@ -43,7 +43,7 @@ def index0(): def home(): try: first_message, first_time = msg_db.get_first_time_of_message(contact.wxid) - except IndexError: + except TypeError: return set_text('咱就是说,一次都没聊过就别分析了') data = { 'sub_title': '二零二三年度报告', From db0277fbd7b398ca09af63d92c61b066dc8b0095 Mon Sep 17 00:00:00 2001 From: shuaikangzhou <863909694@qq.com> Date: Thu, 7 Dec 2023 00:19:16 +0800 Subject: [PATCH 8/9] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=AF=BC=E5=87=BA?= =?UTF-8?q?=E5=9B=BE=E7=89=87=E7=BC=BA=E5=A4=B1=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/DataBase/output_pc.py | 2 +- app/util/dat2pic.py | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/app/DataBase/output_pc.py b/app/DataBase/output_pc.py index 77f0adf..76dc719 100644 --- a/app/DataBase/output_pc.py +++ b/app/DataBase/output_pc.py @@ -890,7 +890,7 @@ const chatMessages = [ if match: continue image_path = hard_link_db.get_image(content=str_content, thumb=False) - image_path = path.get_relative_path(image_path, base_path=f'./data/聊天记录/{self.contact.remark}/image') + image_path = path.get_relative_path(image_path, base_path=f'/data/聊天记录/{self.contact.remark}/image') image_path = image_path.replace('\\', '/') # print(f"tohtml:---{image_path}") if self.is_5_min(timestamp): diff --git a/app/util/dat2pic.py b/app/util/dat2pic.py index 9c7df78..7a36d9c 100644 --- a/app/util/dat2pic.py +++ b/app/util/dat2pic.py @@ -50,14 +50,15 @@ def decode_dat(file_path, out_path): if decode_code == -1: return + filename = os.path.basename(file_path) if file_type == 1: pic_name = os.path.basename(file_path)[:-4] + ".jpg" elif file_type == 3: - pic_name = file_path[:-4] + ".png" + pic_name = filename[:-4] + ".png" elif file_type == 5: - pic_name = file_path[:-4] + ".gif" + pic_name = filename[:-4] + ".gif" else: - pic_name = file_path[:-4] + ".jpg" + pic_name = filename[:-4] + ".jpg" file_outpath = os.path.join(out_path, pic_name) if os.path.exists(file_outpath): return file_outpath From 2efc52840ac0c3659e4cf2000ee27196fe961705 Mon Sep 17 00:00:00 2001 From: shuaikangzhou <863909694@qq.com> Date: Thu, 7 Dec 2023 00:44:51 +0800 Subject: [PATCH 9/9] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=90=88=E5=B9=B6?= =?UTF-8?q?=E5=90=8E=E7=9A=84=E8=81=8A=E5=A4=A9=E6=95=B0=E6=8D=AE=E5=BC=82?= =?UTF-8?q?=E5=B8=B8=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/DataBase/merge.py | 2 +- app/DataBase/msg.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/DataBase/merge.py b/app/DataBase/merge.py index 7679821..c3aa63a 100644 --- a/app/DataBase/merge.py +++ b/app/DataBase/merge.py @@ -13,7 +13,7 @@ def merge_databases(source_paths, target_path): if not os.path.exists(source_path): break db = sqlite3.connect(source_path) - db.text_factory = bytes + # db.text_factory = bytes cursor = db.cursor() sql = ''' SELECT TalkerId,MsgsvrID,Type,SubType,IsSender,CreateTime,Sequence,StrTalker,StrContent,DisplayContent,BytesExtra diff --git a/app/DataBase/msg.py b/app/DataBase/msg.py index a6bdc7e..1b03ce7 100644 --- a/app/DataBase/msg.py +++ b/app/DataBase/msg.py @@ -213,4 +213,4 @@ if __name__ == '__main__': pprint(msg.get_message_by_num('wxid_0o18ef858vnu22', local_id)) print(msg.get_messages_by_keyword(wxid, '干嘛')) pprint(msg.get_messages_by_keyword(wxid, '干嘛')[0]) - print(msg.get_first_time_of_message('wxid_0o18ef858vnu22')) + print(msg.get_first_time_of_message('wxid_fervbwign7m822'))