python微信公众号之关注公众号自动回复


Posted in Python onOctober 25, 2018

我们知道一旦使用开发者模式,我们就无法使用公众号平台中的自动回复功能,也就是关注自动回复功能只有自己写才可以。

python微信公众号之关注公众号自动回复

如图所示,我们无法直接使用此功能。

那么接着上一个博客,我们完成了关键词自动回复功能,博文地址

实现自动回复的机制就是:
一旦用户给公众号一个触发(有可能发了一段文字、或者图片等等,也可能是关注了公众号),后台就会收到一个对应的XML消息,我们需要做的就是解析它,并作出回应即可。

那么如果关注了一个公众号,公众号后台会收到这样的XML消息。

<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[FromUser]]></FromUserName>
<CreateTime>123456789</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[subscribe]]></Event>
</xml>

参数如下:

python微信公众号之关注公众号自动回复

以上,那就easy了,我们只要解析这个XML,获得MsgType为event,那么就进行判断event是否为“subscribe”如果是,就进行回复消息即可。

关键代码如下:(具体代码看上一个博文)

def parse_xml(web_data):
 if len(web_data) == 0:
  return None
 xmlData = ET.fromstring(web_data)
 msg_type = xmlData.find('MsgType').text
 ...#省略了一部分
 elif msg_type == 'event':#判断为事件消息
  #print('event')
  return EventMsg(xmlData)
class EventMsg(Msg):
 def __init__(self, xmlData):
  Event.__init__(self, xmlData)
  self.Event = xmlData.find('Event').text#取Event这个参数里的内容
if recMsg.MsgType == 'event':
     #print('yes')
     event = recMsg.Event
     if event == 'subscribe':#判断如果是关注则进行回复
      content = "。。。"
      replyMsg = reply.TextMsg(toUser, fromUser, content)
      return replyMsg.send()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中统计函数运行耗时的方法
May 05 Python
Python的time模块中的常用方法整理
Jun 18 Python
python读写json文件的简单实现
Apr 11 Python
Python3实现购物车功能
Apr 18 Python
使用PyInstaller将python转成可执行文件exe笔记
May 26 Python
浅析python继承与多重继承
Sep 13 Python
Python高级特性切片(Slice)操作详解
Sep 27 Python
打包python 加icon 去掉cmd黑窗口方法
Jun 24 Python
python global和nonlocal用法解析
Feb 03 Python
Python配置pip国内镜像源的实现
Aug 20 Python
python飞机大战游戏实例讲解
Dec 04 Python
关于python3 opencv 图像二值化的问题(cv2.adaptiveThreshold函数)
Apr 04 Python
python 文件查找及内容匹配方法
Oct 25 #Python
利用python循环创建多个文件的方法
Oct 25 #Python
用python生成1000个txt文件的方法
Oct 25 #Python
Python爬虫之正则表达式的使用教程详解
Oct 25 #Python
python实现键盘控制鼠标移动
Nov 27 #Python
解决python 无法加载downsample模型的问题
Oct 25 #Python
python实现写数字文件名的递增保存文件方法
Oct 25 #Python
You might like
PHP中“简单工厂模式”实例代码讲解
2012/09/04 PHP
屏蔽机器人从你的网站搜取email地址的php代码
2012/11/14 PHP
PHP读取PDF内容配合Xpdf的使用
2012/11/24 PHP
使用PHPExcel操作Excel用法实例分析
2015/03/26 PHP
再推荐十款免费的php开发工具
2015/11/09 PHP
PHP读取Excel类文件
2017/05/15 PHP
解决PHP curl或file_get_contents下载图片损坏或无法打开的问题
2019/10/11 PHP
超级酷和最实用的jQuery实例收集(20个)
2010/04/21 Javascript
基于jquery的文本框与autocomplete结合使用(asp.net+json)
2012/05/30 Javascript
js动态创建、删除表格示例代码
2013/08/07 Javascript
Jquery实现图片放大镜效果的思路及代码(自写)
2013/10/18 Javascript
单元选择合并变色示例代码
2014/05/26 Javascript
JS选中checkbox后获取table内一行TD所有数据的方法
2015/07/01 Javascript
javascript将中国数字格式转换成欧式数字格式的简单实例
2016/08/02 Javascript
微信小程序上滑加载下拉刷新(onscrollLower)分批加载数据(二)
2017/05/11 Javascript
angular4模块中给标签添加背景图的实现方法
2017/09/15 Javascript
详解angularjs popup-table 弹出框表格指令
2017/09/20 Javascript
JavaScript笛卡尔积超简单实现算法示例
2018/07/30 Javascript
详释JavaScript执行环境与执行栈
2019/04/02 Javascript
原生js中运算符及流程控制示例详解
2021/01/05 Javascript
如何利用JavaScript编写一个格斗小游戏
2021/01/06 Javascript
python dict remove数组删除(del,pop)
2013/03/24 Python
python实现根据ip地址反向查找主机名称的方法
2015/04/29 Python
python遍历目录的方法小结
2016/04/28 Python
windows上安装Anaconda和python的教程详解
2017/03/28 Python
PyQt5实现从主窗口打开子窗口的方法
2019/06/19 Python
python 动态调用函数实例解析
2019/10/21 Python
Django 批量插入数据的实现方法
2020/01/12 Python
Python3 assert断言实现原理解析
2020/03/02 Python
Python 炫技操作之合并字典的七种方法
2020/04/10 Python
Python操作MySQL数据库的示例代码
2020/07/13 Python
英国发展最快的在线超市之一:Click Marketplace
2021/02/15 全球购物
消防工作实施方案
2014/06/09 职场文书
一年级数学上册复习计划
2015/01/17 职场文书
项目安全员岗位职责
2015/02/15 职场文书
JavaScript实现复选框全选功能
2021/04/11 Javascript