博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python webpy微信公众号开发之 回复图文消息
阅读量:6933 次
发布时间:2019-06-27

本文共 2205 字,大约阅读时间需要 7 分钟。

新建图文回复模板reply_pictext.xml:

$def with (toUser,fromUser,createTime,title1,description1,picurl1,url1)

<xml>
<ToUserName><![CDATA[$toUser]]></ToUserName>
<FromUserName><![CDATA[$fromUser]]></FromUserName>
<CreateTime>$createTime</CreateTime>
<MsgType><![CDATA[news]]></MsgType>
<ArticleCount>3</ArticleCount>
<Articles>
<item>
<Title><![CDATA[$title1]]></Title>
<Description><![CDATA[$description1]]></Description>
<PicUrl><![CDATA[$picurl1]]></PicUrl>
<Url><![CDATA[$url1]]></Url>
</item>
<item>
<Title><![CDATA[$title1]]></Title>
<Description><![CDATA[$description1]]></Description>
<PicUrl><![CDATA[$picurl1]]></PicUrl>
<Url><![CDATA[$url1]]></Url>
</item>
<item>
<Title><![CDATA[$title1]]></Title>
<Description><![CDATA[$description1]]></Description>
<PicUrl><![CDATA[$picurl1]]></PicUrl>
<Url><![CDATA[$url1]]></Url>
</item>
</Articles>
</xml>

 

 

更改WeixinInterface类

class WeixinInterface:
def __init__(self):
self.app_root = os.path.dirname(__file__)
self.templates_root = os.path.join(self.app_root, 'template')
self.render = web.template.render(self.templates_root)

def POST(self):

str_xml = web.data() #获得post来的数据

xml = etree.fromstring(str_xml)#进行XML解析
msgType=xml.find("MsgType").text #text image voice event video shortvideo location
fromUser=xml.find("FromUserName").text
toUser=xml.find("ToUserName").text
if msgType=='event':
eventcont=xml.find("Event").text
if eventcont=='subscribe':
replayText = u'Hello,我是Amily,欢迎关注我的微信号'
return self.render.reply_text(fromUser,toUser,int(time.time()),replayText)
if eventcont == "unsubscribe":
replayText = u'我现在功能还很简单,知道满足不了您的需求,但是我会慢慢改进,欢迎您以后再来'
return self.render.reply_text(fromUser,toUser,int(time.time()),replayText)
if msgType=='text':
content=xml.find("Content").text
if type(content).__name__ == "unicode":
content = content.encode('UTF-8')
Nword = youdao(content)
return self.render.reply_text(fromUser,toUser,int(time.time()),u'有道翻译:\n'+Nword) #reply_text是我们用来回复用户的模板
if msgType=='voice':
return self.render.reply_pictext(fromUser,toUser,int(time.time()),'B区来自世界的商店','女王节到了,还不快去买礼物?','http://images2015.cnblogs.com/blog/785499/201603/785499-20160308110435429-590906761.png','http://www.bqu.com')

转载于:https://www.cnblogs.com/AmilyWilly/p/5253536.html

你可能感兴趣的文章
深入浅出Websocket(二)分布式Websocket集群
查看>>
DOM节点删除方法小结
查看>>
LeetCode 简要日记 455 & 104
查看>>
(十三) 构建dubbo分布式平台-dubbo管控台安装
查看>>
详解动态规划最长公共子序列--JavaScript实现
查看>>
使用索引绘图(转)
查看>>
Kafka简单使用
查看>>
常用的布局?
查看>>
Java并发编程实战笔记2:对象的组合
查看>>
GreenDao使用注意事项
查看>>
HTTP协议
查看>>
Filter 设计模式编码实践
查看>>
华山论剑之浅谈iOS的生产线 工厂模式
查看>>
人人都能学会的python编程教程14:高级特性1
查看>>
sticky list item
查看>>
如何用树莓派和PHP开发一个比特币和以太坊交易机器人
查看>>
为什么说百度教育大脑3.0,是中国教育迎来的真正智慧大脑?
查看>>
Raft只读操作实现要点
查看>>
逆向世界杯直播App 央视影音-iOS客户端
查看>>
MediaCodec 解码后数据对齐导致的绿边问题
查看>>