微信的自动回复接入聊天机器人
今天偶尔发现了一个有趣的python库--itchat,可以实现微信的自动回复、防撤回,结合图灵机器人还能实现聊天机器人的作用
简单介绍一下配置与工具
win7旗舰版 pycharm python2.7(我在用python3版本运行时png.py会发生报错,不知道大家那怎么样)
这次用到的是python的itchat模块,关于itchat这里有很详细的介绍,同时也给出官方介绍:itchat
首先就是安装itchat模块,直接在cmd中运行
pip install itchat
安装完成后就能静静的装逼了
先给出防撤回以及自动回复的代码:
#coding:utf-8 import re import timeimport itchat from itchat.content import * import sys reload(sys) sys.setdefaultencoding('utf8') #由于我们返回的是中文,Unicode的编码问题,读取文件时使用的编码默认是ascii而不是utf8,所以这里我们要把默认编码设为utf8@itchat.msg_register([TEXT]) #这里我们先选择注册文本 def reply(msg): #首先设置防撤回,接着ruturn后的内容就是自动回复的内容,这个自动回复仅对好友生效,群里不会生效friend = itchat.search_friends(userName=msg['FromUserName'])itchat.send(r"Friend:%s -- %s "r"Time:%s "r" Message:%s" % (friend['NickName'], friend['RemarkName'], time.ctime(), msg['Text']),toUserName='filehelper')return '快还钱'if __name__ == '__main__':#启动微信自动登录,二维码登录 itchat.auto_login(True)itchat.run()
防撤回功能是原理是将消息备份发送到文件助手toUserName='filehelper',由于是接入微信API,读取消息会比手机端快一些。
如果要针对特定的人进行自动回复,这就就应该将return语句换为itchat.send(msg,toUserName=你的好友)
接下来就是接入聊天机器人的环节了(贼好玩)
首先要先去图灵机器人注册一个账号去整个机器人
注册以后选择机器人管理-->创建机器人
创建完成后,机器人设置-->终端设置,把页面往下拉能看到apikey,这个数据后面需要用到
接下来编写我们的代码:
# coding:utf-8 import requests from wxpy import * import itchat import requests import jsondef get_response(_info):print(_info) # 从好友发过来的消息api_url = 'http://www.tuling123.com/openapi/api' # 图灵机器人网址data = {'key': '你的key', 'info': _info, # 这是我们从好友接收到的消息 然后转发给图灵机器人'userid': 'wechat-robot', # 这里你想改什么都可以 }r = requests.post(api_url, data=data).json() # 把data数据发print(r.get('text')) # 机器人回复给好友的消息return r@itchat.msg_register(itchat.content.TEXT) def text_reply(msg):return get_response(msg["Text"])["text"] # 将信息转发给好友if __name__ == '__main__':itchat.auto_login(True)itchat.run()
大家玩的开心!
friend = itchat.search_friends(userName=msg['FromUserName'])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"我已经收到你在【%s】发送的消息【%s】稍后回复。--微信助手(Python版)" % (time.ctime(), reply_content),toUserName=msg['FromUserName'])itchat.auto_login()
itchat.run()
转载于:https://www.cnblogs.com/Ragd0ll/p/8719147.html
微信的自动回复接入聊天机器人相关推荐
- php给微信公众号接入聊天机器人程序+采坑记录
php给微信公众号接入聊天机器人程序 今天逛了下我的公众号,突然心血来潮,想添加个自动聊天功能,于是-动手-!! 主要用到的api: 图灵机器人api 青云客智能聊天机器人API 茉莉机器人API 至 ...
- 微信公众号接入图灵机器人实现自动回复消息
2019独角兽企业重金招聘Python工程师标准>>> 1.创建图灵机器人 进入图灵机器人网址:http://www.tuling123.com/ 登录/注册,进入机器人管理,然后点 ...
- 微信公众号接入图灵机器人
微信公众号接入图灵机器人 1. 申请一个微信公众号 这个步骤和申请一个小程序了类似,首先进入微信公众平台进行注册,关键是注册的时候是选择订阅号,还是服务号,我觉的如果你是自己做着玩的,就搞个订阅号,订 ...
- 如何让你的微信公众号与聊天机器人 ChatGPT 连接在一起
微信公众号成为了许多企业.个人品牌强有力的宣传工具,与在微信上实现聊天互动的聊天机器人 chatbot 结合起来,可以大大提高网站流量和用户满意度.如果你想在微信上实现与聊天机器人的连接,那么这篇文章 ...
- 教你如何在你的程序或网站中接入聊天机器人(附实例分享)
智能聊天机器人(以下简称"聊天机器人") 最近已经变成同事.朋友聊天离不开的话题,尤其是最近发布的升级版 4.0. 聊天机器人能干嘛呢? 直接创作歌曲.编写剧本.读懂代码.读懂你上 ...
- 微信公众号接入天行机器人案例和方法
首先使用的是天行机器人: 1.接入基本原理: https://www.tianapi.com/apiview/47 申请完成后的结果如下 调用对应的接口的参数如下: http://api.tianap ...
- 写一个自动回复的聊天机器人
要写一个自动聊天的机器人,底层必定离不开socket, TCP 是一个稳定.可靠的传输协议,常用于对数据进行准确无误的传输,socket里面有对它的封装. TCP 的概念 TCP 的英文全拼(Tran ...
- 微信公众号添加聊天机器人
为微信公众号添加后台自动聊天机器人. 要求:有微信公众号 操作:1.进入图灵机器人官网,进行注册. 2.创建机器人 3.添加到相关公众号 4.为机器人进行拓展能力训练 ...
- python3+服务器+微信公众号的聊天机器人
写在最前:假期想稍微自学一下python语言,在课程中实现了聊天机器人,但是那时候是从网上找的源码,这次想要自己一句一句试试编码.为了利于交互,希望基于微信平台进行开发,但是用自己的微信账号害怕发出去 ...
- Python-快速实现微信公众号自动回复(聊天机器人)
原理:通过微信公众号提供的开发者模式,利用Python搭建环境,实现自动回复,回复内容通过调用图灵机器人的API 配置:服务器(这里是阿里云主机,Ubuntu),公众号,图灵机器人 一,公众平台上进行 ...
最新文章
- 《C++代码设计与重用》——1.2 重用的神话
- 洛谷4147:玉蟾宫——题解
- python爬取慕课视频-python爬虫:爬取网站视频
- python如何爬取网站所有目录_[python] 爬取网站所有的URL
- 浅谈tomcat中间件的优化【转】
- 西南科技大学城市学院计算机专科,西南科技大学城市学院官网
- Python为数据添加拉普拉斯噪声Laplace noise
- centos 环境变量_CentOS系统下为用户添加root权限
- nginx 负载均衡集群解决方案 healthcheck_nginx_upstreams (一)
- Python获取指定文件夹下的文件名
- 为什么ConcurrentHashMap没有ConcurrentHashSet
- matlab 怎么使用function,Matlab怎么调用函数 自定义函数使用方法
- OpenGL基础35:帧缓冲(下)之简单图像处理
- Cufon中文字符无法识别的解决方案
- 高等代数——大学高等代数课程创新教材(丘维声)——2.1笔记+习题
- Win10问题篇:使用微PE装机。(完整版教程)
- 故障模块名称kernelbase.dll_OBDII(OBD2)故障码库P0700P0799
- 日记侠:写文章快速赚钱的方法就3个字
- call方法 java_漫谈JS中的call和apply方法
- Java项目(前端vue后台java微服务)在线考试系统(java+vue+springboot+mysql+maven)