微信公众号第三方平台开发python教程 Part 2

github地址:cppfun@wechat-open-third-party-dev
在开始本节之前,你需要先阅读以下文章:
微信公众号第三方平台开发python教程 Part 1
这一节肯定是在第一节的基础上,如果你没有看过第一节,可能有点困难。

这一节的任务是获取第三方平台component_access_token,这个和公众号的获取access_token类似,个人觉得比较简单,我们直接来看实现:

    def get_com_access_token(self):
        # load file
        json_file = open('com_access_token.json')
        data = json.load(json_file)
        json_file.close()

        component_access_token = data['component_access_token']

        now = time.time()
        if data['expire_time'] < now:
            url = "https://api.weixin.qq.com/cgi-bin/component/api_component_token"
            payload = {'component_appid': self.component_appid,
                   'component_appsecret': self.component_appsecret,
                   'component_verify_ticket': self.ticket}
            headers = {'content-type': 'application/json'}
            response = requests.post(url, data=json.dumps(payload), headers=headers)
            component_access_token = json.loads(response.text)['component_access_token']
            data['component_access_token'] = component_access_token
            data['expire_time'] = int(now) + 7000
            # save file
            json_file = open('com_access_token.json', 'w')
            json_file.write(json.dumps(data))
            json_file.close()

        return component_access_token

我们将component_access_token存储进com_access_token.json文件里面。这个和存储access_token类似。
我把以上代码封装到一个类里面,我们来看下这个类的初始化代码:

class WxOpenSDK:
    def __init__(self, ticket):
        self.component_appid = component_appid
        self.component_appsecret = component_appsecret
        self.ticket = ticket
  # something below...

那么最终我们怎么调用component_access_token方法呢?按如下操作:

# load file
json_file = open('com_ticket.json')
data = json.load(json_file)
json_file.close()

if data['ComponentVerifyTicket'] == '':
    return

ComponentVerifyTicket = data['ComponentVerifyTicket']
wxOpenSDK = WxOpenSDK(ticket=ComponentVerifyTicket)
# code others

通过以上代码就可以进行调用。
好了这是第二节的内容,坑不多,大家可以快速跳过。
接下来我们进行第三节的讲解。

One thought on “微信公众号第三方平台开发python教程 Part 2

发表评论