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

目录

  • 1.原理
  • 2.接收普通消息
  • 3.接收代码普通消息代码实现

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

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

原文地址:https://www.cnblogs.com/simon-idea/p/11355701.html

时间: 2024-08-28 12:08:07

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

个人微信公众号搭建Python实现 -开发配置和微信服务器转入-认识微信公众号(14.1.1)

目录 1.微信账号类型 2.微信公众号开发需求 3.微信公众号开发原理 @(认识微信公众号) 1.微信账号类型 个人号 公众号 订阅号 服务号 企业号 这里要讲的就是订阅号 前往注册微信公众号 2.微信公众号开发需求 内嵌功能 被动回复 主动告知 内嵌网页 高级需求需编程实现如 3.微信公众号开发原理 编程人员要做的就是完成开发者服务器或者说是网页服务器 前往微信公众号开发者文档 原文地址:https://www.cnblogs.com/simon-idea/p/11349388.html

在新浪SAE上搭建微信公众号的python应用

微信公众平台的开发者文档https://www.w3cschool.cn/weixinkaifawendang/ python,flask,SAE(新浪云),搭建开发微信公众账号http://www.oschina.net/code/snippet_1768500_36580 从零开始 Python 微信公众号开发https://zhuanlan.zhihu.com/p/21354943 新浪云应用http://www.sinacloud.com/doc/sae/python/ SAE Pyth

.net开发微信公众号(3)-接收微信推送的消息

接收微信推送的消息 一.消息发送发式 用户发送的消息会被微信服务器转发到开发者服务器上(启动开发者模式时填的那个URL),开发者服务器接收到消息并处理完成会把消息再发回给微信服务器,再由微信服务器推送给用户.流程也非常简单. 二.接收消息分类 根据微信官方的文档说明,把接收消息分成两类: 1.普通消息 2.事件消息 事件消息除了这6种以为,还有一种是发送模板消息后返回的结果. 三.消息处理 接下来我们看下这些消息如何处理. 首先,做消息有效性验证.上一篇我们已经写了验证的方法,在这里直接用就行了

flask+ngrok微信公众号搭建小试

利用ngrok+flask搭建微信公众平台,基本分为三步:1. ngrok配置:2. 微信公众平台配置:3. flask搭建.基本的数据流走向如下图所示: 1. ngrok配置 ngrok主要是为使用nat上网.没有公网地址资源的用户提供一个内网和外网映射的工具,通过它可以在公网访问内网的资源. 首先在ngrok官网下载ngrok工具,本次使用的版本:2.1.18,在win7下使用,使用命令为:ngrok.exe http 80 如下图所示,蓝色圈住的链接即为对外的链接,后面表示该链接映射至本地

【微信公众号开发】【12】模板消息

前言: 1,模板消息接口的使用规则可在官方文档中查看(官方文档地址见第一章) 2,自己申请的模板一般很难过审核,有发送模板消息的需求时,最好先在模板库中找到适合的模板 3,模板消息是主动发送给用户的通知类消息 4,模板ID最好写在配置文件中,命名易于区分,写备注,不然日后容易混乱 正文: 1,新建模板 {{first.DATA}} 文章标题:{{keyword1.DATA}} 作者名称:{{keyword2.DATA}} 分类:{{keyword3.DATA}} {{remark.DATA}}

用java开发微信公众号:接收和被动回复普通消息(三)

上篇说完了如何接入微信公众号,本文说一下微信公众号的最基本功能:普通消息的接收和回复.说到普通消息,那么什么是微信公众号所定义的普通消息呢,微信开发者文档中提到的接收的普通消息包括如下几类: 1.文本消息2.图片消息3.语音消息4.视频消息5.小视频消息6.地理位置消息7.链接消息(被动回复的消息) 被动回复的普通消息包括: 1.回复文本消息2.回复图片消息3.回复语音消息4.回复视频消息5.回复音乐消息6.回复图文消息 其实接收消息和被动回复消息这两个动作是不分家的,这本来就是一个交互场景,一

微信公众号实现无限制推送模板消息!可向指定openID群发

公众号提供模板消息接口,除了公众号规定的上限次数,一般情况下不能无限制推送,每次最多调用10万次,具体的看公众号后台开发接口权限>发送消息>模版消息(业务通知),可以看到每天最大的推送次数. 公众号后台没有提供模板消息推送的操作界面,需要通过微号帮公众号第三平台实现,支持全部粉丝推送.分组推送,暂不支持使用粉丝openID群发. 1.模板消息群发功能 操作界面设置,模板消息发送任务和创建模板消息,只有服务号才能使用模板消息群发功能,首次使用先在公众号后台申请模版功能. 2.创建模板消息 首次点

Python快速搭建自动回复微信公众号

Python快速搭建自动回复微信公众号 在之前的一篇文章 Python利用 AIML 和 Tornado 搭建聊天机器人微信订阅号 中用 aiml 实现了一个简单的英文聊天机器人订阅号.但是只能处理英文消息,现在用 图灵机器人 来实现一个中文的聊天机器人订阅号. 这里主要介绍如何利用 Python 的 Tornado Web框架以及wechat-python-sdk 微信公众平台 Python 开发包来快速搭建微信公众号. 完整的公众号代码 GitHub 地址:green ,由于目前此公众号有一

从Python爬虫到SAE云和微信公众号:二、新浪SAE上搭建微信服务

目的:用PHP在SAE上搭建一个微信公众号的服务器. 1.申请一个SAE云账号 SAE申请地址:http://sae.sina.com.cn/  可以使用微博账号登陆,SAE是新浪的云服务,时间也比较长了,功能比较多. 特点:免费使用,对于学习者而言已经够用了,长时间用充点云豆也花不了多少钱(最低每天10云豆消费),几十块钱(1元=100云豆)玩一年还是可以的. AWS:如果使用aws免费的空间,很容易用超免费额度,而且用超了额度不会停止,而是从信用卡扣费,以美元计价价格对于学习者而言非常昂贵!