520这一天,也是网络情人节。就在今天,python聊天机器人竟然对我表白了,并且还自动的和微信里面的所有人和群聊天。一时间,所有人以为我变成了聊天达人。具体什么情况,我们慢慢看看怎么实现的。
01、运行环境
运行平台:Mac
Python版本:Python3.6
IDE:spyder
02、wxpy介绍
wxpy 在 itchat 的基础上,通过大量接口优化提升了模块的易用性,并进行丰富的功能扩展。
wxpy一些常见的场景:
一些常见的场景
控制路由器、智能家居等具有开放接口的玩意儿
跑脚本时自动把日志发送到你的微信
加群主为好友,自动拉进群中
充当各种信息查询
转发消息
逗人玩
# 脑洞太大的就不提了...
总而言之,可用来实现各种微信个人号的自动化操作
03、安装wxpy
安装wxpy非常简单,如果你拥有pip,请直接按照Github中的方法安装:
从 PYPI 官方源下载安装 (在国内可能比较慢或不稳定):
04、 登录微信
以下为代码输出
机器人对我表白
在这特殊的日子里,机器人对我说了我爱你,也就是自己发给自己信息。还可以说更多其他的内容,只需要设置一下send()内容既可。具体代码如下:
'''给自己发送“我爱你“'''# 在Web微信中把自己加为好友bot.self.add()bot.self.accept()# 发送消息给自己bot.self.send(" 520,我爱你!")
下图是运行效果:
指定聊天对象,大胆聊天表白吧
在这么特殊的一天,你可以使用聊天机器人指定某个人进行聊天,大胆说出自己平常不敢说的话。即使他/她给你回复了,你不好意思回复他。机器人可以帮你自动回复。如何实在不好意思和她聊天,也可以忽略,不用自动回复。
比如,找到微信昵称或者备注为”冯彬“的好友,然后对他说,“亲,在干嘛呢”。并且自动回复 “嗯,收到你的消息了”。
'''指定聊天对象,大胆进行表白吧'''#指定聊天对象,并发送你想说的话#还可以发送图片,视频,文件或者动图等。可以试一下my_friend = bot.friends().search('冯彬')[0]#found = ensure_one(my_friend) //确保找到的是唯一,避免重复my_friend.send("亲,在干嘛呢")#如何指定聊天回复你了,聊天机器人自动回复设置好的消息。@bot.register(my_friend)def reply_my_friend(msg): return '{} ,收到你的消息了'.format(msg.text, msg.type)'''指定聊天对象,聊天机器人拒绝回复他的消息'''ignore_friend = bot.friends().search('冯彬')[0]@bot.register(ignore_friend)def ignore(msg): return
效果如下:
自动回复群里的消息
群里的消息太多,回复不过来?可以使用聊天机器人自动回复设置好的内容。比如回复群名为 “[志愿者]数据圈”的所有消息,并且不想回复的时候,也可以直接忽略。
'''指定一个群聊,并且自动回复群里的消息'''boring_group = bot.groups().search('[志愿者]数据圈')[0]@bot.register(boring_group)def reply_my_friend(msg): return '{} ,收到你的消息了,马上处理'.format(msg.text, msg.type)#忽略群里的消息@bot.register(boring_group)#忽略群的消息def ignore(msg): #什么也不做 return
效果如下:
写在最后