最浪漫的编程代码可复制微信(最浪漫的编程代码可复制手机)
这次分享主要是构建微信机器人的接入,以及相关的资料整理,主要内容包括:
快速构建微信机器人
wxpy包介绍
图灵机器人介绍
快速构建微信机器人
wxpy包介绍
图灵机器人介绍
为了说明代码有多简单,先上代码,不含注释一共六行:
备注:代码中的api我做了修改处理,请输入你在图灵机器人中获取的apikey
fromwxpy import
*## 在电脑上登录网页版版微信
bot =Bot()
#apikey,在此处输入图灵机器人的key
tuling =Tuling(api_key='7e41a9c26dde4xxxxxxxxxxxxxxxxxxxxx')
#自动回复
@bot.register()
defreply_all(msg):tuling.do_reply(msg)
把以上代码放到python中运行,即可完成机器人的搭建。
展开全文
实际上,机器人的搭建,主要依赖于python中的wxoy包以及图灵机器人的api,因此你想更深入地研究一些内容,建议你进一步阅读下面的两个相关知识。
1.wxpy包:可能是最优雅的微信个人号 API
wxpy包是一个允许在python中操作微信的工具包,它在ichat的基础上通过大量的借口提升了易用性。以下是wxpy的一些常见场景(摘自官方文档):
控制路由器、智能家居等具有开放接口的玩意儿
运行脚本时自动把日志发送到你的微信
加群主为好友,自动拉进群中
跨号或跨群转发消息
自动陪人聊天
逗人玩
...
控制路由器、智能家居等具有开放接口的玩意儿
运行脚本时自动把日志发送到你的微信
加群主为好友,自动拉进群中
跨号或跨群转发消息
自动陪人聊天
逗人玩
...
简单来说,可用来实现各种微信个人号的自动化操作,接下里介绍一些常用的操作:
安装wxpy
wxpy支持python2.7,3.4-3.6版本
pip install -U wxpy
登录微信
wxpy支持python2.7,3.4-3.6版本
fromwxpy import*
## 在电脑上登录网页版版微信
bot =Bot()
启用缓存,能够自动登录
## 在电脑上登录网页版版微信,并启用缓存实现自动登录
bot =Bot(cache_path=True)
查询统计
#获取所有聊天对象
bot.chats()
#获取所有好友
bot.friends()
#获取所有群聊
bot.groups()
结果
[<Friend:浩彬老撕机器人2>,<Friend:于xx>,<Friend:Cxx>,<Friend:xxx>,<Friend:Pxx>,<Friend:浩彬老撕>,<Friend:PAxx>,<Group:机器人们>,<MP:探数寻理>]
bot.friends()[0].wxid
#结果
2635636115
#获取微信头像,并保存在本地
bot.friends()[0].get_avatar(save_path='d:/jupyter/wxpy/photo.jpg')
#统计
friends =bot.friends()
print(friends.stats_text())
结果
浩彬老撕机器人2共有 5位微信好友男性:3(60.0%)女性:2(40.0%)TOP 10省份广东:5(100.00%)TOP 10城市广州:5(100.00%)
发送消息
#在好友中找到名字包括“浩彬”,性别是男的广州好友
my_friend =bot.friends().search('浩彬',sex=MALE,city='广州')[1]
#send:动态发送不同类型消息,默认为本文
#send_image:发送图片
my_friend.send('你在吗')
my_friend.send_image('d:/jupyter/wxpy/lovely.jpg')
聊天机器人
专属你的某人的聊天机器人
备注:代码中的api我做了修改处理,请输入你在图灵机器人中获取的apikey
fromwxpy import*
bot =Bot(cache_path=True)## 在电脑上登录网页版版微信,并启用缓存
# 搜索好友,并指定。bot.friends().search的搜索结果是一个列表,所以记得指定元素[]
my_friend =bot.friends().search('浩彬老撕')[1]
#apikey,在此处输入图灵机器人的key
tuling =Tuling(api_key='7e41a9c26dde4xxxxxxxxxxxxxxxxxxxxx')
#wxpy中通过预先注册方式实现消息自动处理#预先注册是指预先将特定聊天对象的特定类型消息,注册到对应的处理函数,以实现自动回复等功能。
@bot.register(my_friend) #预先注册
defreply_my_friend(msg):
tuling.do_reply(msg)
print(msg)
#wxpy的embed() 可在堵塞线程的同时,进入 Python 命令行,方便调试,一举两得。
embed() #堵塞进程,在jupyter中可以删掉此行
所有人自动回复
备注:代码中的api我做了修改处理,请输入你在图灵机器人中获取的apikey
fromwxpy import*
## 在电脑上登录网页版版微信
bot =Bot()
#apikey,在此处输入图灵机器人的key
tuling =Tuling(api_key='7e41a9c26dde4xxxxxxxxxxxxxxxxxxxxx')
#自动回复
@bot.register()
defreply_all(msg):
tuling.do_reply(msg)
print(msg)embed() #堵塞进程,在jupyter中可以删掉此行
备注:请慎重使用全部自动回复,该功能也实现对群聊消息的自动回复,一个不小心很容易会被踢出群~
2.API图灵:简单易用的 机器人API
图灵机器人提供的API比较方便,只需要注册就能获得免费的API,基本能够满足测试所需要的。在机器人管理界面,即能创建新的机器人。
选择,设置,可以进一步完成机器人的设定。机器人提供多个知识库,同时也能自定义设定回复内容
同时提供多个扩展功能,满足需要