cluic / wxauto

Windows版本微信客户端(非网页版)自动化,可实现简单的发送、接收微信消息,简单微信机器人
MIT License
3.01k stars 483 forks source link

偶尔会出现出错,该如何解决 #144

Open jinde98 opened 1 year ago

jinde98 commented 1 year ago

原代码如下:

def sendtowechat(msg):
    username = "XX"  # 要发送的人
    groupname = "XX"
    wx = WeChat()  # 获取当前微信客户端
    while True:
        try:
            WxUtils.SetClipboard(f'{today}XX\n以上信息来自动推送/:share{datetime.datetime.now().time().strftime("%H:%M:%S")}')
            wx.Search(username)  # 打开聊天窗口
            wx.SendClipboard()
            wx.Search(groupname) 
            wx.SendClipboard()
            logging.info('微信发送成功')
            break  # 发送成功后跳出循环
        except Exception as e:
            logging.error(f'微信发送失败: {e}')
            time.sleep(20)  

运行偶尔会出现错误,日志如下,一直循环报错。本想着,出错后休眠20秒再次运行,但现在只有任务重启后,才能正常运行。没有健壮代码的好方法? image

cluic commented 11 months ago

试下新版本,适用于最新的PC微信3.9.8.15

jinde98 commented 11 months ago

试下新版本,适用于最新的PC微信3.9.8.15

感谢大佬的更新。我之前这个问题的原因找到了,当windows进入锁屏状态就无法调用windowsControl了。不知道您的API版本还能用不,是否能避免这个问题。

cluic commented 11 months ago

因为是模拟操作,所以不能锁屏调用的