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使用心得之获得github代码库列表
Jun 25 Python
python基础教程之自定义函数介绍
Aug 29 Python
用Python编写分析Python程序性能的工具的教程
Apr 01 Python
python:socket传输大文件示例
Jan 18 Python
Python解惑之True和False详解
Apr 24 Python
深入理解Python中的内置常量
May 20 Python
Python cookbook(数据结构与算法)将名称映射到序列元素中的方法
Mar 22 Python
python多进程实现文件下载传输功能
Jul 28 Python
深入浅析Python 中的sklearn模型选择
Oct 12 Python
python基于三阶贝塞尔曲线的数据平滑算法
Dec 27 Python
python不到50行代码完成了多张excel合并的实现示例
May 28 Python
Python如何基于Tesseract实现识别文字功能
Jun 05 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中导出数据到excel时数字变为科学计数的解决方法
2013/02/03 PHP
基于PHP实现发微博动态代码实例
2020/12/11 PHP
传智播客学习之java 反射
2009/11/22 Javascript
用javascript判断IE版本号简单实用且向后兼容
2013/09/11 Javascript
js+css实现的简单易用兼容好的分页
2013/12/30 Javascript
JS对象转换为Jquery对象示例
2014/01/26 Javascript
jQuery添加删除DOM元素方法详解
2016/01/18 Javascript
vue.js事件处理器是什么
2017/03/20 Javascript
解决微信二次分享不显示摘要和图片的问题
2017/08/18 Javascript
jquery 获取索引值在一定范围的列表方法
2018/01/25 jQuery
jQuery实现基本淡入淡出效果的方法详解
2018/09/05 jQuery
vue的keep-alive中使用EventBus的方法
2019/04/23 Javascript
使用vue3重构拼图游戏的实现示例
2021/01/25 Vue.js
[04:53]DOTA2英雄基础教程 祈求者
2014/01/03 DOTA
Python中使用PyHook监听鼠标和键盘事件实例
2014/07/18 Python
Python实现CET查分的方法
2015/03/10 Python
Python绘制3D图形
2018/05/03 Python
python实现自动发送报警监控邮件
2018/06/21 Python
python实现一组典型数据格式转换
2018/12/15 Python
python 读取dicom文件,生成info.txt和raw文件的方法
2019/01/24 Python
python爬取盘搜的有效链接实现代码
2019/07/20 Python
Python根据服务获取端口号的方法
2019/09/25 Python
详解python内置常用高阶函数(列出了5个常用的)
2020/02/21 Python
100%有机精油,美容油:House of Pure Essence
2018/10/30 全球购物
惠普新加坡官方商店:HP Singapore
2020/04/17 全球购物
女大学生个人求职信
2013/12/09 职场文书
机修工工作职责
2014/02/21 职场文书
寄语是什么意思
2014/04/10 职场文书
超市七夕促销活动方案
2014/08/28 职场文书
教师政风行风评议心得体会
2014/10/21 职场文书
不同意离婚答辩状
2015/05/22 职场文书
于丹讲座视频观后感
2015/06/15 职场文书
安全守法证明
2015/06/23 职场文书
Java数组与堆栈相关知识总结
2021/06/29 Java/Android
python+opencv实现目标跟踪过程
2022/06/21 Python
Java中的Kafka为什么性能这么快及4大核心详析
2022/09/23 Java/Android