wechatpy.client.api.scan 源代码

# -*- coding: utf-8 -*-

from optionaldict import optionaldict

from wechatpy.client.api.base import BaseWeChatAPI


[文档]class WeChatScan(BaseWeChatAPI): API_BASE_URL = "https://api.weixin.qq.com/scan/"
[文档] def get_merchant_info(self): """ 获取商户信息 详情请参考 http://mp.weixin.qq.com/wiki/6/c61604ff6890d386d6227945ad4a68d2.html :return: 返回的 JSON 数据包 使用示例:: from wechatpy import WeChatClient client = WeChatClient('appid', 'secret') info = client.scan.get_merchant_info() """ return self._get("merchantinfo/get")
[文档] def create_product(self, product_data): """ 创建商品 详情请参考 http://mp.weixin.qq.com/wiki/6/c61604ff6890d386d6227945ad4a68d2.html :return: 返回的 JSON 数据包 """ return self._post("product/create", data=product_data)
[文档] def modify_product_status(self, standard, key, status): """ 提交审核/取消发布商品 详情请参考 http://mp.weixin.qq.com/wiki/15/1007691d0f1c10a0588c6517f12ed70f.html :param standard: 商品编码标准 :param key: 商品编码内容 :param status: 设置发布状态。on 为提交审核,off 为取消发布 :return: 返回的 JSON 数据包 """ data = { "keystandard": standard, "keystr": key, "status": status, } return self._post("product/modstatus", data=data)
[文档] def publish_product(self, standard, key): """ 提交审核商品 shortcut 接口 等同于调用 ``modify_product_status(standard, key, 'on')`` """ return self.modify_product_status(standard, key, "on")
[文档] def unpublish_product(self, standard, key): """ 取消发布商品 shortcut 接口 等同于调用 ``modify_product_status(standard, key, 'off')`` """ return self.modify_product_status(standard, key, "off")
[文档] def set_test_whitelist(self, userids=None, usernames=None): """ 设置测试人员白名单 注意:每次设置均被视为一次重置,而非增量设置。openid、微信号合计最多设置10个。 详情请参考 http://mp.weixin.qq.com/wiki/15/1007691d0f1c10a0588c6517f12ed70f.html :param userids: 可选,测试人员的 openid 列表 :param usernames: 可选,测试人员的微信号列表 :return: 返回的 JSON 数据包 """ data = optionaldict(openid=userids, username=usernames) return self._post("testwhitelist/set", data=data)
[文档] def get_product(self, standard, key): """ 查询商品信息 详情请参考 http://mp.weixin.qq.com/wiki/15/7fa787701295b884410b5163e13313af.html :param standard: 商品编码标准 :param key: 商品编码内容 :return: 返回的 JSON 数据包 """ data = { "keystandard": standard, "keystr": key, } return self._post("product/get", data=data)
[文档] def list_product(self, offset=0, limit=10, status=None, key=None): """ 批量查询商品信息 详情请参考 http://mp.weixin.qq.com/wiki/15/7fa787701295b884410b5163e13313af.html :param offset: 可选,批量查询的起始位置,从 0 开始,包含该起始位置 :param limit: 可选,批量查询的数量,默认为 10 :param status: 可选,支持按状态拉取。on为发布状态,off为未发布状态, check为审核中状态,reject为审核未通过状态,all为所有状态 :param key: 支持按部分编码内容拉取。填写该参数后,可将编码内容中包含所传参数的商品信息拉出 :return: 返回的 JSON 数据包 """ data = optionaldict(offset=offset, limit=limit, status=status, keystr=key,) return self._post("product/getlist", data=data)
[文档] def update_product(self, product_data): """ 更新商品信息 详情请参考 http://mp.weixin.qq.com/wiki/15/7fa787701295b884410b5163e13313af.html :return: 返回的 JSON 数据包 """ return self._post("product/update", data=product_data)
[文档] def clear_product(self, standard, key): """ 清除商品信息 详情请参考 http://mp.weixin.qq.com/wiki/15/7fa787701295b884410b5163e13313af.html :param standard: 商品编码标准 :param key: 商品编码内容 :return: 返回的 JSON 数据包 """ data = { "keystandard": standard, "keystr": key, } return self._post("product/clear", data=data)
[文档] def check_ticket(self, ticket): """ 检查 wxticket 参数有效性 详情请参考 http://mp.weixin.qq.com/wiki/15/7fa787701295b884410b5163e13313af.html :param ticket: 请求 URL 中带上的 wxticket 参数 :return: 返回的 JSON 数据包 """ return self._post("scanticket/check", data={"ticket": ticket})