第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > python+inchat 实现微信自动回复个人及群聊消息

python+inchat 实现微信自动回复个人及群聊消息

时间:2023-05-05 00:30:08

相关推荐

python+inchat 实现微信自动回复个人及群聊消息

1. 安装

cmd下安装requests和itchat,安装命令如下:

pip install requests

pip install itchat

2. 为什么安装itchat和requests

Requests:

是Python实现的简单易⽤的HTTP库(基于urllib,采⽤Apache2 Licensed开源协议的 HTTP 库)

ItChat:

itchat是一个开源的微信个人号接口,使用python和微信进行交互。

3.完整实现代码如下:

#-*- coding:utf-8 -*-import requestsimport itchatKEY = 'bce6c864602****f9d3a3c****50fe60' #可以到图灵机器人官网申请一个,免费的def get_response(msg):# 构造了要发送给服务器的数据apiUrl = '/openapi/api'data = {'key' : KEY,'info' : msg,'userid' : 'wechat-robot',}try:r = requests.post(apiUrl, data=data).json() # 字典的get方法在字典没有'text'值的时候会返回None而不会抛出异常return r.get('text') # 为了防止服务器没有正常响应导致程序异常退出,这里用try-except捕获了异常except:# 如果服务器没能正常交互(返回非json或无法连接),那么就会进入下面的returnreturn# 将会返回一个None#注册获取别人发来的信息方法@itchat.msg_register(['Text','Map', 'Card', 'Note', 'Sharing', 'Picture'])def tuling_reply(msg):print(msg.User['NickName'] +":"+ msg['Text']) #这里输出给你发微信的人的名字和他发送的内容reply = get_response(msg['Text']) #调取图灵机器人获取回复print(reply+"\n") #打印机器人回复的消息return reply@itchat.msg_register([itchat.content.TEXT], isGroupChat=True) #群消息的处理def print_content(msg):if msg.User["NickName"]=='518'or msg.User["NickName"]=='518': #这里可以在后面加更多的or msg.User["NickName"]=='你希望自动回复群的名字'print(msg.User['NickName'] +":"+ msg['Text'])#打印哪个群给你发了什么消息print(get_response(msg['Text'])+"\n") #打印机器人回复的消息return get_response(msg['Text'])else: #其他群聊直接忽略passitchat.auto_login(hotReload=True)itchat.run()

4.注意点

图灵机器人网址传送门

进去后点击申请自己的专属机器人,把KEY换成你的apikey,下面那个密匙那个按钮不要打开,否则机器人无法正常使用。机器人能识别的只有文字,官方自带的表情包和红包,而且只能回复文字。

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