使用微信推送课程信息
使用Python+微信公众号测试平台推送信息
0x01 准备工作
因为我的公众号再创建的时候选择的是个人,所以不能进行认证,也就不能给用户推送模板消息,所以此程序是基于微信公众平台接口测试,来实现的微信公众号消息推送的,每个人都可以到这里去申请测试号——>>>URL
注册账号 获取appID与appSecret以及测试的公众号
注册成功后登陆获取appID与appSercret

获取测试号二维码

创建推送模版
新增测试模版——->模版标题为推送标题,模版内容填{{user.DATA}} {{weather.DATA}} {{hitokoto.DATA}}
至此,你已经获取到了模版ID

0x02 脚本编写
首先获取Access_Token
根据微信官方文档

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| import requests import json
appID = '' appSecret = ''
......................................
def getAccessToken(appId, appSecret): """ @获取getAccessToken :param APPID:微信平台账号ID信息 :param APPSECRET:微信平台账号密钥信息 :return: 'access_token' 微信平台认证Token """ url = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=' + APPID + '&secret=' + APPSECRET + '' response = requests.get(url) result = json.loads(response.text) return result['access_token'] .........................................
|
推送信息:
根据微信官方文档
调用方法:
- 第一步:获取template_id(注意:仅微信开放平台同事可获取)
通过向微信公众平台申请模板,来获取模板id。
请注意,URL置空,则在发送后,点击模板消息会进入一个空白页面(IOS),或无法点击(Android)。
POST请求
https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=ACCESS_TOKEN
请求包为Json
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| { "touser":"OPENID", "template_id":"ngqIpbwh8bUfcSsECmogfXcV14J0tQlEpBO27izEYtY", "url":"http://weixin.qq.com/download", "topcolor":"#FF0000", "data":{ "User": { "value":"黄先生", "color":"#173177" }, "Date":{ "value":"06月07日 19时24分", "color":"#173177" }, } }
|
参数说明
| 参数 |
是否必须 |
说明 |
| touser |
是 |
向指定用户发送,需要先获取OPENID |
| template_id |
是 |
对指定模版进行发送,template_id |
| url |
是 |
URL置空,则在发送后,点击模板消息会进入一个空白页面(IOS),或无法点击(Android)。 |
| Data |
是 |
Json包,通过Data数据来渲染发送的信息 |
根据API文档构建Python脚本:
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
| .......................................
def pushMessage(appID, appsecret, openID,template_id): """ @Author:Chrrr1y :param appID: 微信开发平台信息AppID :param appsecret: 微信开发平台信息appsercret :param openID: 账号主体ID信息 :param template_id 微信开发平台template_id """ access_token = getAccessToken(appID, appsecret) url = 'https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=' + access_token message = '' data = { "touser": openID, "template_id": template_id, "url":"http://weixin.qq.com/download", "topcolor": "#FF0000", "data": { "user": { "value": message, }, "weather": { "value": value }, } } response = requests.post(url, json=data, headers=headers) .........................................
|
至此,脚本构建完成
0x03 效果截图


0x04 FAQ:
| 参数 |
说明 |
| OPENID |
关注测试公众号之后,即可获取微信用户OPENID |