Python 实现微信自动回复的方法


Posted in Python onSeptember 11, 2020

众所周知QQ上面是可以设置自动回复的,但是微信上面并不可以。最近在学习Python,发现Python的适用范围是真的很广,这里使用itchat组件实现微信的自动回复

1:安装itchat

pip install itchat

2:简单实例:

(1):发送信息

import itchat
itchat.auto_login()
name = itchat.search_friends(name=u'XX') #XX表示昵称或用户名
userName = name[0]["UserName"]
print(userName )
itchat.send_msg('。。。', toUserName=userName)

(2):回复发给自己的文本消息

import itchat
@itchat.msg_register(itchat.content.TEXT)
def text_reply(msg):
  return msg.text
itchat.auto_login()
itchat.run()

3:实现微信自动回复

这里使用到了图灵机器人 http://www.tuling123.com/

注册一个账号添加一个机器人然后根据api文档使用接口即可获得机器人返回值

#获取图灵机器人回复信息
def get_msg(msg):
apiUrl = 'http://openapi.tuling123.com/openapi/api/v2'
data = {
  "perception": {
    "inputText": {
      "text": msg
    },
  },
  "userInfo": {
    "apiKey": "cfada3289203426f842746afdc5c0806",
    "userId": "demo"
  }
}
data = json.dumps(data)
try:
r = requests.post(apiUrl,data = data).json()
return r['results'][0]['values']['text']
except:
return ''
#正常消息自动回复
@itchat.msg_register([TEXT, MAP, CARD, NOTE, SHARING])
def text_reply(msg):
print(msg.type)
#设置默认回复
defaultmsg = '你好'
#获取图灵机器人的回复信息
reply = get_msg(msg['Text'])
#如果图灵机器人回复信息有误则使用默认回复
replymsg = reply or defaultmsg
return replymsg
#音频,图片自动回复
@itchat.msg_register([PICTURE, RECORDING, ATTACHMENT, VIDEO])
def download_files(msg):
  msg.download(msg.fileName)
  typeSymbol = {
    PICTURE: 'img',
    VIDEO: 'vid', }.get(msg.type, 'fil')
  return '@%s@%s' % (typeSymbol, msg.fileName)
#好友请求,自动添加并打招呼
@itchat.msg_register(FRIENDS)
def add_friend(msg):
  msg.user.verify()
  msg.user.send('Nice to meet you!')
#群消息自动回复
@itchat.msg_register(TEXT, isGroupChat=True)
def text_reply(msg):
#设置默认回复
defaultmsg = '你好'
#获取图灵机器人的回复信息
reply = get_msg(msg['Text'])
#如果图灵机器人回复信息有误则使用默认回复
replymsg = reply or defaultmsg
return replymsg
itchat.auto_login(hotReload=True)
itchat.run(True)

以上就是Python 实现微信自动回复的方法的详细内容,更多关于python 微信自动回复的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python查看多台服务器进程的脚本分享
Jun 11 Python
python获取当前日期和时间的方法
Apr 30 Python
python OpenCV学习笔记直方图反向投影的实现
Feb 07 Python
python利用高阶函数实现剪枝函数
Mar 20 Python
Python常见工厂函数用法示例
Mar 21 Python
python3 实现对图片进行局部切割的方法
Dec 05 Python
使用Python做定时任务及时了解互联网动态
May 15 Python
matplotlib命令与格式之tick坐标轴日期格式(设置日期主副刻度)
Aug 06 Python
解决python明明pip安装成功却找不到包的问题
Aug 28 Python
在python中修改.properties文件的操作
Apr 08 Python
一文轻松掌握python语言命名规范规则
Jun 18 Python
解决运行出现'dict' object has no attribute 'has_key'问题
Jul 15 Python
python 如何调用远程接口
Sep 11 #Python
Visual Studio code 配置Python开发环境
Sep 11 #Python
详解使用Python写一个向数据库填充数据的小工具(推荐)
Sep 11 #Python
python如何实现图片压缩
Sep 11 #Python
Numpy(Pandas)删除全为零的列的方法
Sep 11 #Python
详解Python中import机制
Sep 11 #Python
python使用隐式循环快速求和的实现示例
Sep 11 #Python
You might like
PHP中读写文件实现代码
2011/10/20 PHP
Ubuntu中搭建Nginx、PHP环境最简单的方法
2015/03/05 PHP
PHP实现的ID混淆算法类与用法示例
2018/08/10 PHP
解决Laravel5.x的php artisan migrate数据库迁移创建操作报错SQLSTATE[42000]
2020/04/06 PHP
Thinkphp 框架基础之源码获取、环境要求与目录结构分析
2020/04/27 PHP
侧栏跟随滚动的简单实现代码
2013/03/18 Javascript
详解javascript高级定时器
2015/12/31 Javascript
JavaScript直播评论发弹幕切图功能点集合效果代码
2016/06/26 Javascript
ES6学习之变量的两种命名方法示例
2017/07/18 Javascript
浅谈Webpack打包优化技巧
2018/06/12 Javascript
bootstrap-paginator服务器端分页使用方法详解
2020/02/13 Javascript
vue自定义插件封装,实现简易的elementUi的Message和MessageBox的示例
2020/11/20 Vue.js
[02:07]TI9显影之尘系列 - Vici Gaming
2019/08/20 DOTA
python实现将文本转换成语音的方法
2015/05/28 Python
python魔法方法-属性转换和类的表示详解
2016/07/22 Python
Python简单检测文本类型的2种方法【基于文件头及cchardet库】
2016/09/18 Python
Python实现针对中文排序的方法
2017/05/09 Python
python构建深度神经网络(续)
2018/03/10 Python
Django之使用内置函数和celery发邮件的方法示例
2019/09/16 Python
浅析python标准库中的glob
2020/03/13 Python
Python3 pickle对象串行化代码实例解析
2020/03/23 Python
英国著名的药妆网站:Escentual
2016/07/29 全球购物
新加坡第一的杂货零售商:NTUC FairPrice
2020/12/05 全球购物
如何判断计算机可能已经中马
2013/03/22 面试题
应届生学校辅导员求职信
2013/11/07 职场文书
文明家庭先进事迹材
2014/01/27 职场文书
四年大学生活的自我评价范文
2014/02/07 职场文书
商学院大学生求职的自我评价
2014/03/12 职场文书
毕业生个人自荐书
2015/03/05 职场文书
药店营业员岗位职责
2015/04/14 职场文书
2015年前台文员工作总结
2015/05/18 职场文书
团拜会主持词
2015/07/04 职场文书
人民调解协议书
2016/03/21 职场文书
用Python提取PDF表格的方法
2021/04/11 Python
Centos环境下Postgresql 安装配置及环境变量配置技巧
2021/05/18 PostgreSQL
Go语言grpc和protobuf
2022/04/13 Golang