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

@(接收和发送消息-基本说明与实现)

1.原理

在这里插入图片描述

2.接收普通消息

在这里插入图片描述


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

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类型的数据(同样使用工具包打包好)

相关文章

开发背景: 最近一段时间一直在做关于微信方面的网站应用开发,这段时间也收获的不少关于微信开发方面的...
背景:微信网站开发 昨天我负责的一个项目忽然出现了一个十分诡异的bug,进行微信授权登录的时候请求co...
第一步、微信JS-SDK的使用步骤,配置信息的生成获取讲解: 关于JS-SDK的使用步骤和timestamp(时间戳),...
前言: 之前有个项目需要调用微信扫描二维码的功能,通过调用微信扫码二维码功能,然后去获取到系统中生...
前言: 因为接下来会有几篇关于微信JS-SDK功能使用的文章,主要会对微信分享,获取设备信息,获取地理位...
前言: 最近在项目中使用到了微信消息模板推送的功能,也就是将对应的消息推送到对应的用户微信上去,前...