300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > 如何用Python实现机器人自动回复某些好友的微信消息

如何用Python实现机器人自动回复某些好友的微信消息

时间:2023-07-15 18:09:12

相关推荐

如何用Python实现机器人自动回复某些好友的微信消息

整体思路

将需要自动回复的好友配置在配置文件中,脚本启动后自动读取配置利用python库itchat实现微信消息的收发收到消息后,发给思知机器人去处理,得到回复消息后发送给好友

前置准备

安装相关库

pip install itchatpip install requests

注册思知账号

注册思知账号,创建一个机器人,可对机器人进行设置,训练。具体使用参考官网文档:思知机器人。

当然还有很多机器人可供选择,比如图灵机器人。

代码

import requestsimport itchatimport osneedAutoAnswer = []headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36','Referer': '/',}# 机器人配置def get_data(text): data = {"appid": "思知中添加完机器人后,每个机器人有一个appid","userid": "注册思知用的邮箱就行","spoken": text,}return datadef readAutoAnswerList():global needAutoAnswer# 自动回复文件中将需要自动回复好友的备注填写上,一行一个好友file_path = os.getcwd() + '\\自动回复.txt'file = open(file_path,"r", encoding="utf-8")needAutoAnswer = [line.strip('\n') for line in file.readlines()]file.close()def get_answer(text):data = get_data(text)url = '/bot'response = requests.post(url=url, data=data, headers=headers) response.encoding = 'utf-8'result = response.json()answer = result['data']['info']['text']return answer@itchat.msg_register(itchat.content.TEXT)def text_reply(msg):friend = msg['User']['RemarkName']content = msg['Content']print('%s: %s' % (friend, content))if friend in needAutoAnswer:answer = get_answer(content)itchat.send(answer, msg['FromUserName'])print('我:%s' % answer)if __name__ == "__main__":readAutoAnswerList()itchat.auto_login(hotReload=True)itchat.run()

打包测试以及打包exe可执行文件

如何测试

运行python脚本,会生成一个微信登录的二维码图片,扫描登录成功,即可实现微信消息的自动回复

如何打包可执行文件

测试ok后,可以通过命令pyinstaller -F xxx.py打包成可执行文件,命令执行完后,会在当前目录下创建一个dist目录,可执行文件就在该目录下。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。