Python腳本--微信公眾號自定義菜單的創建及獲取


  暑假寫的一個修改/獲取微信公眾號菜單的腳本,具體看微信公眾平台的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"]))

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM