Python编程之微信推送模板消息功能示例


Posted in Python onAugust 21, 2017

本文实例讲述了Python微信推送模板消息功能。分享给大家供大家参考,具体如下:

官方文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1445241432

具体代码如下:

#!/usr/bin/env python
#-*- coding: utf-8 -*-
import httplib
import json
import MySQLdb
#从数据库中获取access_token
access_token=""
try:
  conn=MySQLdb.connect(host='192.168.1.1',user='root',passwd='root',db='db_weixin',port=3306)
  cur=conn.cursor()
  cur.execute('select access_token from weixin_public')
  result=cur.fetchone()
  #print result
  #print result[0]
  access_token=result[0]
  cur.close()
  conn.close()
except MySQLdb.Error,e:
  print "Mysql Error %d: %s" % (e.args[0], e.args[1])
#根据接口推送消息
if not access_token is None:
  conn = httplib.HTTPConnection("api.weixin.qq.com:80")#微信接口链接
  headers = {"Content-type":"application/json"} #application/x-www-form-urlencoded
  params = ({'touser' : "oEGZ4johnKOtayJbnEVeuaZr6zQ0",#用户openid
  'template_id' : 'AtFuydv8k_15UGZuFntaBzJRCsHCkjNm1dcWD3A-11Y',#模板消息ID
  'url' : 'https://3water.com',#跳转链接
  "topcolor" : "#667F00",#颜色
  "data" : {#模板内容
    "first" : {"value" : "尊敬的710.so : 您的网站https://3water.com (192.168.1.1) 有异常访问", "color" : "#173177"},
    "keyword1" : {"value" : "访问时间 2015-04-05 15:30:59 访问IP 192.168.1.2", "color" : "#173177"},
    "keyword2" : {"value" : "访问链接 https://3water.com", "color" : "#173177"},
    "remark" : {"value" : "访问频率 10/s", "color" : "#173177"}
    }
  }
  )
  conn.request("POST", "/cgi-bin/message/template/send?access_token="+access_token, json.JSONEncoder().encode(params), headers)#推送消息请求
  response = conn.getresponse()
  data = response.read()#推送返回数据
  if response.status == 200:
    print 'success'
    print data
  else:
    print 'fail'
  conn.close()

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python中操作文件之write()方法的使用教程
May 25 Python
Python实现批量修改文件名实例
Jul 08 Python
利用python爬取软考试题之ip自动代理
Mar 28 Python
Python基于回溯法子集树模板解决m着色问题示例
Sep 07 Python
通过Python 接口使用OpenCV的方法
Apr 02 Python
对Python捕获控制台输出流的方法详解
Jan 07 Python
python 实现读取一个excel多个sheet表并合并的方法
Feb 12 Python
Python&&GDAL实现NDVI的计算方式
Jan 09 Python
Python 调用C++封装的进一步探索交流
Mar 04 Python
python 调用js的四种方式
Apr 11 Python
python使用PySimpleGUI设置进度条及控件使用
Jun 10 Python
Python实现抖音热搜定时爬取功能
Mar 16 Python
使用Python写一个贪吃蛇游戏实例代码
Aug 21 #Python
virtualenv实现多个版本Python共存
Aug 21 #Python
基于Python对象引用、可变性和垃圾回收详解
Aug 21 #Python
python 垃圾收集机制的实例详解
Aug 20 #Python
python 实现tar文件压缩解压的实例详解
Aug 20 #Python
详解Python 序列化Serialize 和 反序列化Deserialize
Aug 20 #Python
Python中input与raw_input 之间的比较
Aug 20 #Python
You might like
phpmyadmin的#1251问题
2006/11/25 PHP
PHP 二维array转换json的实例讲解
2018/08/21 PHP
javascript编程起步(第二课)
2007/02/27 Javascript
写出更好的JavaScript程序之undefined篇(中)
2009/11/23 Javascript
parseInt parseFloat js字符串转换数字
2010/08/01 Javascript
Javascript 类型转换方法
2010/10/24 Javascript
用js小类库获取浏览器的高度和宽度信息
2012/01/15 Javascript
jQuery获得内容和属性示例代码
2014/01/16 Javascript
jquery实现弹出层遮罩效果的简单实例
2014/03/03 Javascript
网页禁用右键菜单和鼠标拖动选择方法小结
2015/02/25 Javascript
JS实用的动画弹出层效果实例
2015/05/05 Javascript
C#中使用迭代器处理等待任务
2015/07/13 Javascript
JavaScript多线程详解
2015/08/12 Javascript
JavaScript实现的SHA-1加密算法完整实例
2016/02/02 Javascript
深入理解React中es6创建组件this的方法
2016/08/29 Javascript
使用jQuery的ajax方法向服务器发出get和post请求的方法
2017/01/13 Javascript
jQuery中将json数据显示到页面表格的方法
2018/05/27 jQuery
koa源码中promise的解读
2018/11/13 Javascript
ES6基础之解构赋值(destructuring assignment)
2019/02/21 Javascript
VUE脚手架具体使用方法
2019/05/20 Javascript
Cordova(ionic)项目实现双击返回键退出应用
2019/09/17 Javascript
js实现带有动画的返回顶部
2020/08/09 Javascript
JQuery+drag.js上传图片并且实现图片拖曳
2020/11/18 jQuery
[57:37]EG vs Mineski 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python 将pdf转成图片的方法
2018/04/23 Python
python 移除字符串尾部的数字方法
2018/07/17 Python
详解10个可以快速用Python进行数据分析的小技巧
2019/06/24 Python
Python-Seaborn热图绘制的实现方法
2019/07/15 Python
python绘制无向图度分布曲线示例
2019/11/22 Python
pip已经安装好第三方库但pycharm中import时还是标红的解决方案
2020/10/09 Python
Python 求向量的余弦值操作
2021/03/04 Python
求职简历中个人的自我评价
2013/12/01 职场文书
新浪微博实习心得体会
2014/01/27 职场文书
食堂厨师岗位职责
2014/08/25 职场文书
分居协议书范本
2014/11/03 职场文书
如何做好员工培训计划?
2019/07/09 职场文书