-
这是一个基于Python的,对微信电脑端客户端进行OCR识别以便进行自动化操作的机器人。
-
- 自动适应分辨率
- 自动调整窗口位置
- 识别消息
- 回复指定消息
- 转发消息
- 对指定消息进行其他渠道转发(如Bark,Telegram等)
-
-
Forward.py
负责对消息进行转发。
-
main.py
程序主逻辑。
-
MessageSender.py
消息转发接口,后期扩展发送方式可以对这个文件进行修改。
该类可扩展,故设置了一个
__init__(method)
方法用以选择发送方法,支持smtp邮件发送,ServerChan微信推送,控制台输出和iOS端的软件Bark推送,关于ServerChan的介绍,请移步ServerChan,关于Bark的介绍,请移步Bark。-
MessageSender.__init__(method)
,该方法传入一个method
文本,可从serverChan
、smtp
、console
、Bark
中选一个。 -
MessageSender.config(config)
,该方法传入一个config
字典,以下是两种方式的配置字典格式:-
ServerChan
格式:
{"SCKEY":"你的SCKEY"}
。 -
SMTP
格式:
{"host":"主机IP或域名","port":"端口,一般是25","fromAddr":"用以发送的邮箱","toAddr":"接收邮箱","fromName":"发送者名称","toName":"接收者名称", "user": "用户名", "pwd": "密码"}
。 -
Console 无需配置,config方法直接return
-
Bark 格式:
{"apiKey": "你的APIKEY"}
-
-
MessageSender.send(msg)
,发送消息,发送失败会在控制台输出日志,不会抛出异常。 -
MessageSender.getMethod()
,返回发送的方法。 -
Class
ServerChan
负责向ServerChan发送消息。ServerChan.__init__(text)
,传入SCKEY。ServerChan.send(msg)
,发送消息(支持Markdown格式),直接返回发送状态。
-
Class
SMTPSender
负责通过SMTP发送消息。SMTPSender.__init__(list)
,传入上述配置字典。SMTPSender.send(msg)
,发送消息,直接返回发送成功的文本。
-
Class
ConsoleSender
负责通过控制台输出消息。ConsoleSender.send(msg)
,发送消息,直接返回发送成功的文本。
-
Class
BarkSender
负责通过Bark发送消息。BarkSender.__init__(apikey)
,传入APIKEY。BarkSender.send(msg)
,发送消息,直接返回发送状态。
-
-