修改一些emoji解析失败的问题

This commit is contained in:
shuaikangzhou 2024-01-13 16:33:57 +08:00
parent abefd3c8ea
commit 4e34226a6a
5 changed files with 19 additions and 84 deletions

View File

@ -342,9 +342,15 @@ class DocxExporter(ExporterBase):
n = 0
index = 0
newdoc()
# document = docx.Document()
# doc = document.add_paragraph()
for index, message in enumerate(messages):
if index % 200 == 0 and index:
# doc = document.add_paragraph()
filename = os.path.join(origin_docx_path, f"{self.contact.remark}{n}.docx")
doc.save(filename)
newdoc()
type_ = message[2]
sub_type = message[3]
timestamp = message[5]
@ -386,9 +392,11 @@ class DocxExporter(ExporterBase):
print(f"【合并 DOCX {self.contact.remark}{index + 1}/{len(docs)}")
doc.insert(0, dx)
try:
# document.save(filename)
doc.save(filename)
except PermissionError:
filename = filename[:-5] + f'{time.time()}' + '.docx'
# document.save(filename)
doc.save(filename)
print(f"【完成导出 DOCX {self.contact.remark}")
self.okSignal.emit(1)

View File

@ -148,39 +148,7 @@ class MainWinController(QMainWindow, mainwindow.Ui_MainWindow,QCursorGif):
self.setCursorTimeout(100)
self.startBusy()
self.action_help_contact.triggered.connect(
lambda: QDesktopServices.openUrl(QUrl("https://blog.lc044.love/post/5")))
self.action_help_chat.triggered.connect(
lambda: QDesktopServices.openUrl(QUrl("https://blog.lc044.love/post/5")))
self.action_help_decrypt.triggered.connect(
lambda: QDesktopServices.openUrl(QUrl("https://blog.lc044.love/post/4")))
self.listWidget.setVisible(False)
self.stackedWidget.setVisible(False)
self.listWidget.currentRowChanged.connect(self.setCurrentIndex)
tool_item = QListWidgetItem(Icon.Tool_Icon, '工具', self.listWidget)
chat_item = QListWidgetItem(Icon.Chat_Icon, '聊天', self.listWidget)
contact_item = QListWidgetItem(Icon.Contact_Icon, '好友', self.listWidget)
myinfo_item = QListWidgetItem(Icon.Home_Icon, '我的', self.listWidget)
tool_window = ToolWindow()
tool_window.get_info_signal.connect(self.set_my_info)
tool_window.decrypt_success_signal.connect(self.decrypt_success)
tool_window.load_finish_signal.connect(self.loading)
self.stackedWidget.addWidget(tool_window)
self.chat_window = ChatWindow()
# chat_window = QWidget()
self.stackedWidget.addWidget(self.chat_window)
self.contact_window = ContactWindow()
self.stackedWidget.addWidget(self.contact_window)
label = QLabel('该功能暂不支持哦')
label.setFont(QFont("微软雅黑", 50))
label.setAlignment(Qt.AlignCenter)
self.stackedWidget.addWidget(label)
tool_window.load_finish_signal.connect(self.loading)
self.statusbar.showMessage('聊天窗口上划到顶部会加载新的聊天记录\n一次不行那就多来几次')
self.contact_window.load_finish_signal.connect(self.loading)
self.chat_window.load_finish_signal.connect(self.loading)
self.about_view = AboutDialog(main_window=self, parent=self)
def setCurrentIndex(self, row):
self.stackedWidget.setCurrentIndex(row)
@ -267,8 +235,8 @@ class MainWinController(QMainWindow, mainwindow.Ui_MainWindow,QCursorGif):
关于
"""
# QMessageBox.about(self, "关于",config.about)
about_view = AboutDialog(self)
about_view.show()
# about_view = AboutDialog(self)
self.about_view.show()
def decrypt_success(self):
QMessageBox.about(self, "解密成功", "请重新启动")
@ -284,6 +252,7 @@ class MainWinController(QMainWindow, mainwindow.Ui_MainWindow,QCursorGif):
event.accept()
else:
event.ignore()
def close(self) -> bool:
close_db()
super().close()

Binary file not shown.

View File

@ -1,46 +0,0 @@
from PyQt5.QtCore import QSize, QUrl
from PyQt5.QtGui import QPixmap
from PyQt5.QtWidgets import QApplication, QDialog
try:
from app.ui.menu.dialog import Ui_Dialog
from app import config
from app.resources import resource_rc
except:
from dialog import Ui_Dialog
from ..resources import resource_rc
class AboutDialog(QDialog, Ui_Dialog):
def __init__(self, parent=None):
super(AboutDialog, self).__init__(parent)
self.setupUi(self)
self.setWindowTitle('关于')
self.resize(QSize(640,520))
self.init_ui()
def init_ui(self):
pixmap = QPixmap(':/icons/icons/logo99.png')
self.label_logo.setPixmap(pixmap)
pixmap = QPixmap(':/icons/icons/weixin.png')
self.label_weixin.setPixmap(pixmap)
self.label_version.setText('《留痕》')
self.textBrowser.setHtml(config.about)
self.textBrowser.setOpenExternalLinks(True)
self.textBrowser.anchorClicked.connect(self.handleAnchorClicked)
def handleAnchorClicked(self, url):
# 打开默认浏览器
QUrl(url).openUrl(url)
if __name__ == '__main__':
import sys
app = QApplication(sys.argv)
dialog = AboutDialog()
result = dialog.exec_() # 使用exec_()获取用户的操作结果
if result == QDialog.Accepted:
print("用户点击了导出按钮")
else:
print("用户点击了取消按钮")
sys.exit(app.exec_())

View File

@ -9,6 +9,7 @@ emoji.py
"""
import os
import re
import traceback
import xml.etree.ElementTree as ET
import sqlite3
@ -52,6 +53,9 @@ def parser_xml(xml_string):
try:
root = ET.fromstring(xml_string)
except:
res = re.search('<msg>.*</msg>', xml_string)
if res:
xml_string = res.group()
root = ET.fromstring(xml_string.replace("&", "&amp;"))
emoji = root.find("./emoji")
# Accessing attributes of the 'emoji' element