feat: 微信自动化客服(wechatauto-replica) 干净历史导入 - AI 自动回复/语音收发/朋友圈发布

This commit is contained in:
2026-09-16 10:12:49 +08:00
commit c3b98f4c4e
69 changed files with 19828 additions and 0 deletions
+65
View File
@@ -0,0 +1,65 @@
"""项目内部使用的异常类型定义。"""
from __future__ import annotations
from dataclasses import dataclass
from typing import Optional
@dataclass
class WechatautoError(Exception):
"""基础异常类型。
Args:
message: 错误信息。若未提供则使用 ``default_message``。
detail: 附加的上下文信息,可用于在日志中打印更友好的提示。
"""
default_message: str = ""
message: Optional[str] = None
detail: Optional[str] = None
def __post_init__(self) -> None:
msg = self.message or self.default_message or self.__class__.__name__
super().__init__(msg)
self.message = msg
def __str__(self) -> str:
return self.message or ""
def __repr__(self) -> str:
detail = f", detail={self.detail!r}" if self.detail else ""
return f"{self.__class__.__name__}(message={self.message!r}{detail})"
class NetWorkError(WechatautoError):
"""网络请求相关异常。"""
default_message = "微信无法连接到网络"
class WechatautoUINotFoundError(WechatautoError):
"""当无法定位到指定 UI 控件时抛出。"""
default_message = "未找到目标 UI 控件"
class WechatautoNoteLoadTimeoutError(WechatautoError):
"""微信笔记加载超时异常。"""
default_message = "微信笔记加载超时"
class WechatautoNotLoggedInError(WechatautoError):
"""未找到已登录的微信窗口时抛出。"""
default_message = "未找到已登录的微信主窗口"
__all__ = [
"WechatautoError",
"NetWorkError",
"WechatautoUINotFoundError",
"WechatautoNoteLoadTimeoutError",
"WechatautoNotLoggedInError",
]