在生活和工作中,我们经常不能及时回复消息,尤其是对于业务量大的人来说。而我们也没有那么多精力时不时地回复。这时候,智能机器人可以帮助我们解决很多问题。比如电商客服,比如大型QQ群/微信群的管理员,我们玩游戏的时候,挂掉脚本,机器人会自动给你回复消息,不会得罪你女朋友一段时间,哈哈哈!今天教大家一招,16行Python代码实现一个微信聊天机器人(图灵),再也不用担心不回消息被客户骂了!1、效果用自己的微信(左边)登录后,用助手的微信测试。机器人接管我的微信后,聊天效果看起来不错:2.项目整体思路如下图所示:3.代码分析1.安装和导入模块这里要用到的两个模块是itchat模块和请求模块。这是必不可少的一步。项目基于这两个模块运行。安装方法非常简单。直接按window键+R调出命令窗口,然后输入命令进行安装。比如安装itchat模块,直接输入pipinstallitchat。微信搜索公众号:Linux技术爱好者,回复:linux获取资料。提醒一下,两个模块是分开安装的,安装完一个再安装另一个。安装完成后,我们可以直接在代码中导入模块:importitchatimportrequests2。申请图灵机器人项目的机器人是现成的图灵机器人。我们需要去图灵官网注册,然后进入后台创建机器人。每个机器人都有一个api,就是我们要用到的。图灵机器人以前有免费版和试用版,现在需要实名认证。虽然每天只有100条消息回复,但是测试人员玩玩还是可以的。图灵还可以对关键词进行个性化响应,只需要在后台的“私有语料库”中设置即可。3、实现机器人功能,除了访问网站的url外,还需要判断调用的是哪个机器人,因为你的后台可能有多个机器人。这时候会使用到每个机器人特有的API,将需要发送的消息再用post方式发送请求,发送网站url,机器人的api和要发送的消息,最后提取文本在字典中,最后返回数据。defget_response(msg):apiUrl="http://www.tuling123.com/openapi/api"#要访问的网站#key:robotkey,info:messagetosenddata={'key':KEY,'info':msg,'userid':"WeChat-robot"}#发送请求:r=requests.post(apiUrl,data=data)returnr["text"]4.实现微信功能如果有人给我们发消息,我们调用上面返回的数据,那么怎么知道有人给你发消息了呢?这时候我们使用装饰器,itchat提供的@itchat.msg_register()就可以实现这个功能;然后调用上面写的robot函数,最后返回robot或者sender的信息。为什么要添加发件人信息复制再发呢?这是为了防止网络等其他问题导致机器人无响应。这时候谁给我们发消息,我们会自动回复他同样的消息,避免聊天时没有回复。@itchat.msg_register(itchat.content.TEXT)deftuling_reply(user_data):print(user_data)#用户信息包括发给你的消息user=user_data["Text"]#用户给你发的信息return_user=get_response(user_data["Text"])print(return_user)返回return_user或user5。弹出二维码和循环程序程序运行的时候,需要弹出一个二维码,让我们扫码登录,同时保证程序一直在运行,否则程序会运行一次就完成了。itchat中提供了这两个功能,直接使用即可。itchat.auto_login()#扫码登录itchat.run()#循环执行以上就是这款微信智能聊天机器人的代码分析。这个假人还是不错的。我不知道付费版本。如果你给它充电,它肯定会更强大。不超过20行代码。
