Python几十行代码轻松实现微信自动回复机器人
Python几十行代码轻松实现微信自动回复机器人
最近因为太无聊了就考虑能不能做一些好玩的东西出来,正好在CSDN的推荐上看到大佬做的微信自动回复机器人,觉得很有趣,想着自己也能动手做一个。在此就写下我的具体思路和实现过程吧。
,我是选择先找一个具有自动回复功能的机器,调用其API,上网搜索了一下,发现大家伙都推荐图灵机器人,然后我就溜过去找了一下图灵机器人,发现: 它收费!!!可恶啊,难道刚开始就要结束了吗?后来我又开始了百度大法,发现了一个免费的机器人API 青云客。测试了一手,着实还行,主要是白嫖啊。
扔个链接青云客智能聊天机器人API (qingyunke.)
还好,不至于特别弱智。
找到这个以后能干啥呢?人家官网给了API我们可以直接把这个机器人调用过来
这里就可以开始着手写Python文件了,这里我们主要是运用到了itchat和request这两个库(理论上其实只要下载这两个库就可以了,,我们利用itchat是为了来登录微信网页版并完成一系列操作,而微信网页版在这两年就没方法登上去了,查了一手资料说貌似是腾讯准备放弃微信网页版,这里给出一个解决方法是再下载一个库-- itchat-uos 下载完后,依旧是按下面的思路走,是没有问题的!!!至于具体原理,应该是这个itchat-uos在原来的基础上新增了啥然后让它能够有效继续登录上网页版(大胆猜测,别喷))
def get_response(msg): url = 'http://api.qingyunke./api.php?key=free&appid=0&msg={}'.format(urllib.parse.quote(msg)) html = requests.get(url) return html.json()["content"] hile (1) : msg = input() print("原话 >>", msg) res = get_response(msg) print("机器回复 >>", res)
跑一遍,试试水
好得很呐,调过来了,接下来要完成的使命就是,让它来接管我们的微信,原理大概就是把接受到的信息暂存起来转发给机器人,再把机器人的回复发出去,原理是不是听起来有点难,确实。但你要知道我们用的是Python啊,别的不多,库贼多!!,这里就需要itchat这个库发挥作用了,我刚刚说的那些它都能实现。
直接上代码来解释吧
@itchat.msg_register(itchat.content.TEXT) def qingyun_reply(msg): message = 'i received:' + msg['Text'] reply = get_response(msg['Text']) return reply or message itchat.auto_login(hotReload=True) itchat.run()
这里这个开头@开头那句望文生义就知道是用来登录的,它会调用一个二维码过来让你扫码登录,登录到微信网页版,然后就可以利用Python来分析网页代码获取微信接受的信息了,在这里,内部的函数就是我前面说到的逻辑上的处理,获取信息并转发然后再返回,一气呵成。
还有呢面的两句代码就是 设置是否自动登录,登录完一次后下次点开即用。
而run方法就是用来循环的(不可能一次只回复一条吧!!)
看看实操
齐活,成功了
可恶啊,就是有点废女朋友。
这里给出完整的源代码
#coding=utf8 import urllib.parse import itchat import requests def get_response(msg): url = 'http://api.qingyunke./api.php?key=free&appid=0&msg={}'.format(urllib.parse.quote(msg)) html = requests.get(url) return html.json()["content"] # hile (1) : # msg = input() # print("原话 >>", msg) # res = get_response(msg) # print("机器回复 >>", res) @itchat.msg_register(itchat.content.TEXT) def qingyun_reply(msg): message = 'i received:' + msg['Text'] reply = get_response(msg['Text']) return reply or message itchat.auto_login(hotReload=True) itchat.run()
然后我还闲的无聊把它打包的一下,要的评论区私一下俺,俺发你。
空调维修
- 温岭冰箱全国统一服务热线-全国统一人工【7X2
- 荆州速热热水器维修(荆州热水器维修)
- 昆山热水器故障码5ER-昆山热水器故障码26
- 温岭洗衣机24小时服务电话—(7X24小时)登记报
- 统帅热水器售后维修服务电话—— (7X24小时)登
- 阳江中央空调统一电话热线-阳江空调官方售后电
- 乌鲁木齐阳春燃气灶厂家服务热线
- 珠海许昌集成灶售后服务电话-全国统一人工【
- 乌鲁木齐中央空调维修服务专线-乌鲁木齐中央空
- 新沂热水器故障电话码维修-新沂热水器常见故障
- 诸城壁挂炉24小时服务热线电话
- 靖江空调24小时服务电话-——售后维修中心电话
- 空调室外滴水管维修(空调室外排水管维修)
- 九江壁挂炉400全国服务电话-(7X24小时)登记报修
- 热水器故障码f.22怎么解决-热水器f0故障解决方法
- 营口热水器售后维修服务电话—— 全国统一人工