python发微信公众号消息_个人微信公众号搭建Python实现 -接收和发送消息-基本说明与实现(14.2.1)...

@

1.原理

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzI2NjI0MzI5,size_16,color_FFFFFF,t_70

2.接收普通消息

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzI2NjI0MzI5,size_16,color_FFFFFF,t_70

其他消息类似参考官方文档

3.接收代码普通消息代码实现

from flask import Flask,request,abort

import xmltodict

import time

app = Flask(__name__)

#常量 微信的token令牌

WECHAT_TOKEN = "xxxx"

@app.route("/wx",methods=["GET","POST"])

def wechat():

#这里其实可以做一个验证的

xml_to_dct = xmltodict.parse(request.data)

print(xml_to_dct)

xml_dict = xml_to_dct.get("xml")

#提取信息

msg_type = xml_dict.get("MsgType")

resp_dict = {}

if msg_type == "text":

#表示发送的文本信息

#构造返回值,经由微信服务器回复给用户的内容

resp_dict = {

"xml":{

"ToUserName":xml_dict.get("FromUserName"),

"FromUserName":xml_dict.get("ToUserName"),

"CreateTime":int(time.time()),

"MsgType":"text",

"Content":xml_dict.get("Content")

}

}

resp = xmltodict.unparse(resp_dict)

return resp

if __name__ == '__main__':

app.run(host="127.0.0.1",port=80)

注意

1.在微信公众号控制台已经绑定了自己的服务器了

2.这里使用的flask框架处理请求

3.这里演示了处理普通文本消息,其他消息就以此类比

4.关注用户发送消息给公众号,此时微信官方服务器收到消息转发到自己部署的服务器上,转发过来的数据类型为xml,使用xmltodict包将xml转化为python自带数据类型-字典,然后进行相应的处理,返回数据时也要使用xml类型的数据(同样使用工具包打包好)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值