本文实例讲述了Python微信推送模板消息功能。分享给大家供大家参考,具体如下:
官方文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1445241432
具体代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
#!/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' : 'http://www.zzvips.com' , #跳转链接
"topcolor" : "#667F00" ,#颜色
"data" : { #模板内容
"first" : { "value" : "尊敬的710.so : 您的网站http://www.zzvips.com (192.168.1.1) 有异常访问" , "color" : "#173177" },
"keyword1" : { "value" : "访问时间 2015-04-05 15:30:59 访问IP 192.168.1.2" , "color" : "#173177" },
"keyword2" : { "value" : "访问链接 http://www.zzvips.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程序设计有所帮助。
原文链接:http://www.cnblogs.com/710so/p/weixin_push.html