基于python 微信小程序之获取已存在模板消息列表


Posted in Python onAugust 05, 2019

前言:

为了获取一定高级操作,如:微信模板消息(xiao,xin)推送,把消息推送给用户,或者是获取用户授权信息都需要用到access token,有效期为两个小时?

过了两个小时怎么办?重新获取,来,代码撸起走,啥女朋友没有?

获取小程序对应的access token

def get_wx_token():
  url = "https://api.weixin.qq.com/cgi-bin/token?"
  try:
    respone = requests.get(url, params=payload, timeout=50)
    access_token = respone.json().get("access_token")
    res = respone.json()
    res["time"] = stamp
    print(u'token过期,重新写入文件的内容>>>', res)
    with open(token_file, "w+") as f:
      f.write(json.dumps(res))
    return access_token
  except Exception as e:
    msg = traceback.format_exc()
    print('get token error', msg)
    return

并判断是否过期

def get_access_token():

try:
  with open(token_file, "r") as f:
    content = f.read()
    data_dict = content
    # 如果缓存内容为空,直接重新获取token
    if (content == ''):
      print("token文件为空,重新获取并写入文件")
      result = get_wx_token()
      return result
    else:
      data_dict = re.sub('\'', '\"', data_dict)
      token_time = int(json.loads(data_dict)['time'])
      if (stamp - token_time) > 7100:
        # print("token过期,重新获取并写入文件")
        get_wx_token()
      else:
        return json.loads(data_dict)['access_token']
except Exception as e:
  msg = traceback.format_exc()
  print("access token express time", msg)

根据access token 获取模板列表

def get_templates_list(access_token):
  url = "https://api.weixin.qq.com/cgi-bin/wxopen/template/list?access_token={}".format(access_token)
  data = {
   "offset": 0,
   "count": 20
  }
  r = requests.post(url,data=json.dumps(data)).json()
  tpl_list = r.get('list')
  for tpl in tpl_list:
    print(tpl)
  # print(r.get('list'))

返回数据示例

{
 "errcode": 0,
 "errmsg": "ok",
 "list": [
  {
   "template_id": "wDYzYZVxobJivW9oMpSCpuvACOfJXQIoKUm0PY397Tc",
   "title": "购买成功通知",
   "content": "购买地点{{keyword1.DATA}}\n购买时间{{keyword2.DATA}}\n物品名称{{keyword3.DATA}}\n",
   "example": "购买地点:TIT造舰厂\n购买时间:2016年6月6日\n物品名称:咖啡\n"
  }
 ]
}

总结

以上所述是小编给大家介绍的基于python 微信小程序之获取已存在模板消息列表,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
使用Python进行稳定可靠的文件操作详解
Dec 31 Python
Python实现类继承实例
Jul 04 Python
在Python中使用列表生成式的教程
Apr 27 Python
插入排序_Python与PHP的实现版(推荐)
May 11 Python
Python文本统计功能之西游记用字统计操作示例
May 07 Python
解决Python requests库编码 socks5代理的问题
May 07 Python
python 制作自定义包并安装到系统目录的方法
Oct 27 Python
详解numpy的argmax的具体使用
May 27 Python
python获取磁盘号下盘符步骤详解
Jun 19 Python
tensorflow 动态获取 BatchSzie 的大小实例
Jun 30 Python
python计算auc的方法
Sep 09 Python
python实现跨年表白神器--你值得拥有
Jan 04 Python
Python中typing模块与类型注解的使用方法
Aug 05 #Python
Python及Pycharm安装方法图文教程
Aug 05 #Python
python redis连接 有序集合去重的代码
Aug 04 #Python
Django中URL的参数传递的实现
Aug 04 #Python
Python 操作 ElasticSearch的完整代码
Aug 04 #Python
python elasticsearch从创建索引到写入数据的全过程
Aug 04 #Python
elasticsearch python 查询的两种方法
Aug 04 #Python
You might like
短波收音机简介
2021/03/01 无线电
php类中的$this,static,final,const,self这几个关键字使用方法
2015/12/14 PHP
php创建类并调用的实例方法
2019/09/25 PHP
PHPstorm激活码2020年5月13日亲测有效
2020/09/17 PHP
JavaScript的9个陷阱及评点分析
2008/05/16 Javascript
js下用层来实现select的title提示属性
2010/02/23 Javascript
Js-$.extend扩展方法使方法参数更灵活
2013/01/15 Javascript
JavaScript中的object转换成number或string规则介绍
2014/12/31 Javascript
JavaScript 事件入门知识
2015/04/13 Javascript
数据分析软件之FineReport教程:[5]参数界面JS(全)
2015/08/13 Javascript
使用vue-aplayer插件时出现的问题的解决
2018/03/02 Javascript
详解vue-cli3 中跨域解决方案
2019/04/10 Javascript
typescript配置alias的详细步骤
2020/08/12 Javascript
JavaScript 实现下雪特效的示例代码
2020/09/09 Javascript
Python中使用动态变量名的方法
2014/05/06 Python
Python二分查找详解
2015/09/13 Python
Python 的类、继承和多态详解
2017/07/16 Python
tensorflow学习笔记之简单的神经网络训练和测试
2018/04/15 Python
Python 从相对路径下import的方法
2018/12/04 Python
Python标准库json模块和pickle模块使用详解
2020/03/10 Python
PyQt5 如何让界面和逻辑分离的方法
2020/03/24 Python
中粮集团旗下食品网上购物网站:我买网
2016/09/22 全球购物
Skyscanner加拿大:全球旅行搜索平台
2018/11/19 全球购物
模范家庭事迹材料
2014/02/10 职场文书
省级优秀班集体申报材料
2014/05/25 职场文书
个人授权委托书格式
2014/08/30 职场文书
优秀党员自我评价范文
2014/09/15 职场文书
公民代理授权委托书
2014/09/24 职场文书
2014年项目工作总结
2014/11/24 职场文书
盗窃罪辩护词范文
2015/05/21 职场文书
辩护意见书
2015/06/04 职场文书
回门宴新娘答谢词
2015/09/29 职场文书
vue Element-ui表格实现树形结构表格
2021/06/07 Vue.js
OpenCV-Python模板匹配人眼的实例
2021/06/08 Python
Win11无法安装更新补丁KB3045316怎么办 附KB3045316补丁修复教程
2022/08/14 数码科技
SpringBoot前端后端分离之Nginx服务器下载安装过程
2022/08/14 Servers