300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > python微信群聊机器人_Python + itchat 实现微信机器人聊天(支持自动回复指定群聊)...

python微信群聊机器人_Python + itchat 实现微信机器人聊天(支持自动回复指定群聊)...

时间:2024-06-25 01:00:51

相关推荐

python微信群聊机器人_Python + itchat 实现微信机器人聊天(支持自动回复指定群聊)...

Python + itchat 实现微信机器人聊天(支持自动回复指定群聊)

发布时间:-10-25 22:38,

浏览次数:600

, 标签:

Python

itchat

<>Python + itchat 实现微信机器人聊天(支持自动回复指定群聊)

最近对Python上瘾,闲来无事搞个Python+itchat玩下微信机器人自动回复。

首先要打开cmd输入以下代码,安装requests和itchat(如果两个都安装了的话直接跳过):

pip install requests

pip install itchat

安装完后打开任意Python编译器输入以下代码:

#-*- coding:utf-8 -*- import requests import itchat KEY =

'ccad405a8ff1xxxxxxxxa4380e3b1133' #可以到图灵机器人官网申请一个,免费的 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或无法连接),那么就会进入下面的return return # 将会返回一个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"]==

'你希望自动回复群的名字'or msg.User["NickName"]=='另外一个你希望自动回复群的名字': #这里可以在后面加更多的or msg.User

["NickName"]=='你希望自动回复群的名字' print(msg.User['NickName'] +":"+ msg['Text'])

#打印哪个群给你发了什么消息print(get_response(msg['Text'])+"\n") #打印机器人回复的消息 return

get_response(msg['Text']) else: #其他群聊直接忽略 pass itchat.auto_login(hotReload=True)

itchat.run()

运行后用微信扫码登录即可实现自动回复,这里微信用的是网页版的微信。

<>附 图灵机器人申请网址:/

进去后点击申请自己的专属机器人,申请成功后把上面的KEY换成你的apikey,记得下面那个密匙那个按钮不要打开,否则机器人无法正常使用。

<>注意:机器人能识别的只有文字,官方自带的表情包和红包,而且只能回复文字,其他东西貌似还不能识别和回复。

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