表情包增加日志信息

This commit is contained in:
shuaikangzhou 2023-12-09 23:23:45 +08:00
parent c5d4ee6e3f
commit 996582a81e
5 changed files with 34 additions and 26 deletions

View File

@ -16,7 +16,7 @@ def merge_databases(source_paths, target_path):
db.text_factory = str db.text_factory = str
cursor = db.cursor() cursor = db.cursor()
sql = ''' sql = '''
SELECT TalkerId,MsgsvrID,Type,SubType,IsSender,CreateTime,Sequence,StrTalker,StrContent,DisplayContent,BytesExtra SELECT TalkerId,MsgsvrID,Type,SubType,IsSender,CreateTime,Sequence,StrTalker,StrContent,DisplayContent,BytesExtra,CompressContent
FROM MSG; FROM MSG;
''' '''
cursor.execute(sql) cursor.execute(sql)
@ -25,8 +25,8 @@ def merge_databases(source_paths, target_path):
target_cursor.executemany( target_cursor.executemany(
"INSERT INTO MSG " "INSERT INTO MSG "
"(TalkerId,MsgsvrID,Type,SubType,IsSender,CreateTime,Sequence,StrTalker,StrContent,DisplayContent," "(TalkerId,MsgsvrID,Type,SubType,IsSender,CreateTime,Sequence,StrTalker,StrContent,DisplayContent,"
"BytesExtra)" "BytesExtra,CompressContent)"
"VALUES(?,?,?,?,?,?,?,?,?,?,?)", "VALUES(?,?,?,?,?,?,?,?,?,?,?,?)",
result) result)
cursor.close() cursor.close()
db.close() db.close()

View File

@ -256,7 +256,7 @@ def read_info(version_list, is_logging=False):
tmp_rd['wxid'] = get_info_wxid(Handle) tmp_rd['wxid'] = get_info_wxid(Handle)
tmp_rd['filePath'] = get_info_filePath(tmp_rd['wxid']) if tmp_rd['wxid'] != "None" else "None" tmp_rd['filePath'] = get_info_filePath(tmp_rd['wxid']) if tmp_rd['wxid'] != "None" else "None"
tmp_rd['key'] = get_key(tmp_rd['filePath'], addrLen) if tmp_rd['filePath'] != "None" else "None" tmp_rd['key'] = get_key(tmp_rd['filePath'], addrLen)
result.append(tmp_rd) result.append(tmp_rd)
if is_logging: if is_logging:

View File

@ -47,6 +47,7 @@ class ContactPC:
self.nickName = contact_info.get('NickName') self.nickName = contact_info.get('NickName')
if not self.remark: if not self.remark:
self.remark = self.nickName self.remark = self.nickName
self.remark.replace('*', '_').replace('/', '_').replace('\\', '_')
self.smallHeadImgUrl = contact_info.get('smallHeadImgUrl') self.smallHeadImgUrl = contact_info.get('smallHeadImgUrl')
self.smallHeadImgBLOG = b'' self.smallHeadImgBLOG = b''
self.avatar = QPixmap() self.avatar = QPixmap()

View File

@ -9,17 +9,20 @@ emoji.py
""" """
import os import os
import traceback
import xml.etree.ElementTree as ET import xml.etree.ElementTree as ET
import requests import requests
from app.log import log, logger
root_path = './data/emoji/' root_path = './data/emoji/'
if not os.path.exists('./data'): if not os.path.exists('./data'):
os.mkdir('./data') os.mkdir('./data')
if not os.path.exists(root_path): if not os.path.exists(root_path):
os.mkdir(root_path) os.mkdir(root_path)
@log
def get_image_format(header): def get_image_format(header):
# 定义图片格式的 magic numbers # 定义图片格式的 magic numbers
image_formats = { image_formats = {
@ -36,7 +39,7 @@ def get_image_format(header):
# 如果无法识别格式,返回 None # 如果无法识别格式,返回 None
return None return None
@log
def parser_xml(xml_string): def parser_xml(xml_string):
# Parse the XML string # Parse the XML string
root = ET.fromstring(xml_string) root = ET.fromstring(xml_string)
@ -60,7 +63,7 @@ def parser_xml(xml_string):
'md5': md5 if md5 else androidmd5, 'md5': md5 if md5 else androidmd5,
} }
@log
def download(url, output_dir, name, thumb=False): def download(url, output_dir, name, thumb=False):
if not url: if not url:
return ':/icons/icons/404.png' return ':/icons/icons/404.png'
@ -80,17 +83,22 @@ def download(url, output_dir, name, thumb=False):
def get_emoji(xml_string, thumb=True, output_path=root_path) -> str: def get_emoji(xml_string, thumb=True, output_path=root_path) -> str:
emoji_info = parser_xml(xml_string) try:
md5 = emoji_info['md5'] emoji_info = parser_xml(xml_string)
image_format = ['.png', '.gif', '.jpeg'] md5 = emoji_info['md5']
for f in image_format: image_format = ['.png', '.gif', '.jpeg']
prefix = 'th_' if thumb else '' for f in image_format:
file_path = os.path.join(output_path, prefix + md5 + f) prefix = 'th_' if thumb else ''
if os.path.exists(file_path): file_path = os.path.join(output_path, prefix + md5 + f)
return file_path if os.path.exists(file_path):
url = emoji_info['thumburl'] if thumb else emoji_info['cdnurl'] return file_path
print("下载表情包ing:", url) url = emoji_info['thumburl'] if thumb else emoji_info['cdnurl']
return download(url, output_path, md5, thumb) print("下载表情包ing:", url)
emoji_path = download(url, output_path, md5, thumb)
return emoji_path
except:
logger.error(traceback.format_exc())
return ""
if __name__ == '__main__': if __name__ == '__main__':

View File

@ -41,20 +41,19 @@
- 🗨文本✅ - 🗨文本✅
- 🏝图片✅ - 🏝图片✅
- 🐻‍❄️表情包✅ - 🐻‍❄️表情包✅
- 拍一拍等系统消息✅
- 导出聊天记录 - 导出聊天记录
- sqlite数据库✅ - sqlite数据库✅
- HTML(文本、图片)✅ - HTML(文本、图片、视频、表情包)✅
- Word文档✅ - Word文档✅
- CSV文档✅ - CSV文档✅
- 分析聊天数据,做成可视化年报(请下载exe程序体验该功能急需前端大佬提供优质模板) - 分析聊天数据,做成可视化年报(急需前端大佬提供优质模板)
- 🔥**项目持续更新中** - 🔥**项目持续更新中**
- 导出全部表情包❎ - 导出全部表情包❎
- 合并多个备份数据❎ - 合并多个备份数据❎
- 语音❎ - 语音❎
- 视频❎
- 文件❎ - 文件❎
- 回复❎
- 拍一拍❎
- 小伙伴们想要其他功能可以留言哦📬 - 小伙伴们想要其他功能可以留言哦📬
- 有任何问题可以随时联系我(863909694@qq.com) - 有任何问题可以随时联系我(863909694@qq.com)
@ -115,8 +114,8 @@ pip install -r requirements_pc.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
手机端使用聊天记录迁移功能将聊天数据迁移到电脑上 手机端使用聊天记录迁移功能将聊天数据迁移到电脑上
操作步骤: 操作步骤:
- 安卓: 我->设置->聊天->聊天记录迁移与备份->迁移-> 迁移到电脑微信(迁移完成后重启微信)[否则](https://github.com/LC044/WeChatMsg/issues/27) - 安卓: 手机微信->我->设置->聊天->聊天记录迁移与备份->迁移-> 迁移到电脑微信(迁移完成后重启微信)[否则](https://github.com/LC044/WeChatMsg/issues/27)
- iOS 我->设置->通用->聊天记录迁移与备份->迁移-> 迁移到电脑微信(迁移完成后重启微信)[否则](https://github.com/LC044/WeChatMsg/issues/27) - iOS 手机微信->我->设置->通用->聊天记录迁移与备份->迁移-> 迁移到电脑微信(迁移完成后重启微信)[否则](https://github.com/LC044/WeChatMsg/issues/27)
2. 运行程序 2. 运行程序