Пример #1
0
 def get_user_info(self, o_id):
     '''
     获取用户信息
     :param o_id:
     :return:
     '''
     url = 'https://api.weixin.qq.com/cgi-bin/user/info?access_token=%s&openid=%s&lang=zh_CN' % (
         utils.get_access_token(), o_id)
     resp, data = utils.spider(url)
     return data
Пример #2
0
 def get_user_info(self, o_id):
     '''
     获取用户信息
     :param o_id:
     :return:
     '''
     url = 'https://api.weixin.qq.com/cgi-bin/user/info?access_token=%s&openid=%s&lang=zh_CN' % (
         utils.get_access_token(), o_id)
     resp, data = utils.spider(url)
     return data
Пример #3
0
 def get_open_id_list(self, next_openid=None):
     '''
     获取1万个OpenID
     :param next_openid: 结束的ID
     :return: {"total":23000,"count":10000,"data":{"openid":["","OPENID1","OPENID2"]},"next_openid":"NEXT_OPENID"}
     '''
     next_openid = next_openid if next_openid else ''
     url = 'https://api.weixin.qq.com/cgi-bin/user/get?access_token=%s&next_openid=%s' % (
         utils.get_access_token(), next_openid)
     resp, data = utils.spider(url)
     return data
Пример #4
0
 def get_open_id_list(self, next_openid=None):
     '''
     获取1万个OpenID
     :param next_openid: 结束的ID
     :return: {"total":23000,"count":10000,"data":{"openid":["","OPENID1","OPENID2"]},"next_openid":"NEXT_OPENID"}
     '''
     next_openid = next_openid if next_openid else ''
     url = 'https://api.weixin.qq.com/cgi-bin/user/get?access_token=%s&next_openid=%s' % (
         utils.get_access_token(), next_openid)
     resp, data = utils.spider(url)
     return data
Пример #5
0
 def del_menu(self):
     '''
     删除菜单
     :return: 布尔值
     '''
     url = 'https://api.weixin.qq.com/cgi-bin/menu/delete?access_token=%s' % utils.get_access_token(
     )
     resp, data = utils.spider(url)
     if data['errmsg'] == 'ok':
         return True
     else:
         return False
Пример #6
0
 def get_media(self, m_id, path):
     '''
     获取临时素材
     :param m_id: 素材ID
     :param path: 素材存放目录
     :return: 素材的本地地址
     '''
     url = 'https://api.weixin.qq.com/cgi-bin/media/get?access_token=%s&media_id=%s' % (
         utils.get_access_token(), m_id)
     resp, content = utils.spider(url)
     new_path = '%s/%s%s' % (path, int(time.time()), mimetypes.guess_extension(resp['content-type']))
     with open(new_path, 'wb') as data:
         data.write(content)
         return new_path
Пример #7
0
 def create_media(self, type, path):
     '''
     上传临时素材
     :param type: 图片(image)、语音(voice)、视频(video)和缩略图(thumb)
     :param path: 本地素材路径
     :return: 素材ID
     '''
     url = 'https://api.weixin.qq.com/cgi-bin/media/upload?access_token=%s&type=%s' % (
         utils.get_access_token(), type)
     with open(path, 'rb') as data:
         file = data.read()
         resp, content = utils.spider(url, method='post', files={'file': (path, file)})
         my_data = json.loads(content)
         return my_data['media_id']
Пример #8
0
 def get_media(self, m_id, path):
     '''
     获取临时素材
     :param m_id: 素材ID
     :param path: 素材存放目录
     :return: 素材的本地地址
     '''
     url = 'https://api.weixin.qq.com/cgi-bin/media/get?access_token=%s&media_id=%s' % (
         utils.get_access_token(), m_id)
     resp, content = utils.spider(url)
     new_path = '%s/%s%s' % (path, int(
         time.time()), mimetypes.guess_extension(resp['content-type']))
     with open(new_path, 'wb') as data:
         data.write(content)
         return new_path
Пример #9
0
 def create_media(self, type, path):
     '''
     上传临时素材
     :param type: 图片(image)、语音(voice)、视频(video)和缩略图(thumb)
     :param path: 本地素材路径
     :return: 素材ID
     '''
     url = 'https://api.weixin.qq.com/cgi-bin/media/upload?access_token=%s&type=%s' % (
         utils.get_access_token(), type)
     with open(path, 'rb') as data:
         file = data.read()
         resp, content = utils.spider(url,
                                      method='post',
                                      files={'file': (path, file)})
         my_data = json.loads(content)
         return my_data['media_id']
Пример #10
0
 def create_menu(self, body):
     '''
     创建菜单
     :param body: json
     :return: 布尔值
     '''
     url = 'https://api.weixin.qq.com/cgi-bin/menu/create?access_token=%s' % utils.get_access_token(
     )
     resp, data = utils.spider(
         url,
         method='post',
         data=json.dumps(body, ensure_ascii=False).encode('utf-8'))
     print(data)
     if data['errmsg'] == 'ok':
         return True
     else:
         return False
Пример #11
0
 def batch_user_info_list(self, data):
     '''
     获取100条用户信息
     :param data:
     [{
         "openid": "otvxTs4dckWG7imySrJd6jSi0CWE",
         "lang": "zh-CN"},
         {"openid": "otvxTs_JZ6SEiP0imdhpi50fuSZg",
         "lang": "zh-CN"
     }]
     :return:{ "user_info_list": [{},{}]}
     '''
     data = {"user_list": data}
     url = 'https://api.weixin.qq.com/cgi-bin/user/info/batchget?access_token=%s' % utils.get_access_token()
     resp, content = utils.spider(url, 'post', json.dumps(data))
     return content
Пример #12
0
 def batch_user_info_list(self, data):
     '''
     获取100条用户信息
     :param data:
     [{
         "openid": "otvxTs4dckWG7imySrJd6jSi0CWE",
         "lang": "zh-CN"},
         {"openid": "otvxTs_JZ6SEiP0imdhpi50fuSZg",
         "lang": "zh-CN"
     }]
     :return:{ "user_info_list": [{},{}]}
     '''
     data = {"user_list": data}
     url = 'https://api.weixin.qq.com/cgi-bin/user/info/batchget?access_token=%s' % utils.get_access_token(
     )
     resp, content = utils.spider(url, 'post', json.dumps(data))
     return content