码迷,mamicode.com
首页 > 微信 > 详细

Python脚本--微信公众号自定义菜单的创建及获取

时间:2018-12-01 18:30:53      阅读:269      评论:0      收藏:0      [点我收藏+]

标签:appid   pen   微信小程序   logs   提示框   --   style   https   encoding   

  暑假写的一个修改/获取微信公众号菜单的脚本,具体看微信公众平台的API:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1445241432

# -*- coding: utf-8 -*
import tkMessageBox
import urllib2
import json
import sys
reload(sys)
sys.setdefaultencoding(UTF-8)

appID = wxa46e26b3d591f9f2      //测试号信息
appsecret = 83ee70dbb6dbc1e090971554b1c7981b   //同上

menu = {                      //菜单信息,包括一级菜单和二级菜单
    "button":[
    {
        "type": "view",       //type还可以是微信小程序等,此例子只用了一种type。具体可以去看API
        "name": "百度",
        "url": baidu,
    },
    {
        "name": "腾讯",
        "sub_button": [
            {
                "type": "view",
                "name": "腾讯主页",
                "url": "http://www.tencent.com"
            },
            {
                "type": "view",
                "name": "腾讯招聘",
                "url" : "https://join.qq.com/"
            },
            {
                "type": "view",
                "name": "腾讯网",
                "url": "https://www.qq.com/"
            },
            {
                "type": "view",
                "name": "腾讯视频",
                "url": "https://v.qq.com/"
            }
        ]
    },
    {
        "name": "博客园",
        "sub_button": [
            {
                "type": "view",
                "name": "我的博客",
                "url": "https://www.cnblogs.com/cy708/"
            },
            {
                "type": "view",
                "name": "博客园主页",
                "url": "https://www.cnblogs.com/"
            }
        ]
    }
    ]
}

def getMenuRequest():
    gettoken = https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid= + appID + &secret= + appsecret
    f = urllib2.urlopen(gettoken)
    stringjson = f.read()
    access_token = json.loads(stringjson)[access_token]
    posturl = "https://api.weixin.qq.com/cgi-bin/menu/get?access_token=" + access_token

    req = urllib2.Request(posturl)
    data = urllib2.urlopen(req).read()
    data = json.loads(data)
    return data

def createMenuRequest(menu):
    data = json.dumps(menu,ensure_ascii=False).encode(utf-8)
    gettoken = https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid= + appID + &secret= + appsecret
    f = urllib2.urlopen(gettoken)
    stringjson = f.read()
    access_token = json.loads(stringjson)[access_token]
    postcreateurl = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token=" + access_token

    req = urllib2.Request(postcreateurl)
    response = urllib2.urlopen(req, menu)
    result = response.read()
    result = json.loads(result)     //到这步就可以了,下面的只是提示框显示结果而已
    if result["errcode"] == 0:
        tkMessageBox.showinfo(成功!,"errmsg:"+str(result["errmsg"]))
    else:
        tkMessageBox.showinfo(失败!, "errcode:"+str(result["errcode"])+"\n"+"errmsg:" + str(result["errmsg"]))

 

Python脚本--微信公众号自定义菜单的创建及获取

标签:appid   pen   微信小程序   logs   提示框   --   style   https   encoding   

原文地址:https://www.cnblogs.com/cy708/p/10049977.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!