博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
定制化自己的itchat
阅读量:7095 次
发布时间:2019-06-28

本文共 2160 字,大约阅读时间需要 7 分钟。

上篇文章很详实,可以实现一个低级的微信自动回复机器人,听说还有用图灵的,那就变成高级机器人了。

初级目标: 自动回复好友的信息。

 
#-*- coding:utf-8 -*-#微信的库import itchat#导入想要处理的content内容from itchat.content import *import reimport time#这个装饰器是个类装饰器吧,貌似功能很强大,括号里的内容定义了你这个函数想处理的信息类型,msg便是你收到的微信信息,看样子是个字典。@itchat.msg_register([TEXT, PICTURE, MAP, CARD, NOTE, SHARING, RECORDING, ATTACHMENT, VIDEO])def text_reply(msg):    #调试用的,看看不同的信息都长啥样    print msg    #对于不同类型的信息,我们要记录不同的内容来回复,    #普通文本    if msg['Type'] == 'Text':        reply_content = msg['Text']        #图片,记录图片的名字,FileName这个键值可以表示图片,音频视频的名字    elif msg['Type'] == 'Picture':        reply_content = r"Picture: " + msg['FileName']    #如果接收到的是个名片的话,记下推荐信息和昵称    elif msg['Type'] == 'Card':        reply_content = r" " + msg['RecommendInfo']['NickName'] + r" 's card"    #如果收到的是一个共享的地址的话,用正则分别尝试去匹配经纬度和位置名称    elif msg['Type'] == 'Map':        x, y, location = re.search("
" + x.__str__() + u" jingdu->" + y.__str__() else: reply_content = r"location: " + location #后面这些还没用过,直接处理了,以后有错再说 elif msg['Type'] == 'Note': reply_content = r"Note" elif msg['Type'] == 'Sharing': reply_content = r"Sharing" elif msg['Type'] == 'Recording': reply_content = r"Voice" elif msg['Type'] == 'Attachment': reply_content = r"File: " + msg['FileName'] elif msg['Type'] == 'Video': reply_content = r"Video: " + msg['FileName'] else: reply_content = r"Message" #获取信息来源 friend = itchat.search_friends(userName=msg['FromUserName']) #在itchat助手里进行记录 itchat.send(r"Friend:%s -- %s " r"Time:%s " r" Message:%s" % (friend['NickName'], friend['RemarkName'], time.ctime(), reply_content), toUserName='filehelper') #回复给信息来源,表示朕已经收到你的消息了,你可以退下了 itchat.send(r"I received your news (%s) %s.Reply later.--From itchat(Python)" % (time.ctime(), reply_content), toUserName=msg['FromUserName'])#懒得自定义登录函数了,用自带的函数itchat.auto_login(enableCmdQR=-2,hotReload=True)itchat.send(r'Hello my friend!',toUserName='filehelper')#运行起来,等待接受信息itchat.run()
 

 

傻瓜式的照搬例子就可以了,代码几乎一样。 高级功能有待后续实现

转载于:https://www.cnblogs.com/AlwaysT-Mac/p/6527200.html

你可能感兴趣的文章
Zephyr的Shell
查看>>
fpga技能树
查看>>
国内的Android SDK镜像
查看>>
Bootstrap系列 -- 36. 向上弹起的下拉菜单
查看>>
TMS320C6455 SRIO 实现方案
查看>>
Hough transform(霍夫变换)
查看>>
background-color
查看>>
提升单元测试体验的利器--Mockito使用总结
查看>>
SVN功能详解
查看>>
[转]微信小程序之购物车 —— 微信小程序实战商城系列(5)
查看>>
html5--2.4新的布局元素(3)-section
查看>>
瀑布流案例
查看>>
SSL证书绑定成功
查看>>
在sqlserver 中with(nolock)详解
查看>>
AI金融知识自学偏量化方向-目录0
查看>>
加载的问题
查看>>
添加个人专栏
查看>>
MYSQL的存储过程和函数简单写法
查看>>
acdream1197 Points In Cuboid
查看>>
topcoder srm 390 div1
查看>>