wechatpy.client.api.semantic 源代码

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

from optionaldict import optionaldict

from wechatpy.client.api.base import BaseWeChatAPI


[文档]class WeChatSemantic(BaseWeChatAPI):
[文档] def search( self, query, category, uid=None, latitude=None, longitude=None, city=None, region=None, ): """ 发送语义理解请求 详情请参考 http://mp.weixin.qq.com/wiki/0/0ce78b3c9524811fee34aba3e33f3448.html :param query: 输入文本串 :param category: 需要使用的服务类型,多个可传入列表 :param uid: 可选,用户唯一id(非开发者id),用户区分公众号下的不同用户(建议填入用户openid) :param latitude: 可选,纬度坐标,与经度同时传入;与城市二选一传入 :param longitude: 可选,经度坐标,与纬度同时传入;与城市二选一传入 :param city: 可选,城市名称,与经纬度二选一传入 :param region: 可选,区域名称,在城市存在的情况下可省;与经纬度二选一传入 :return: 返回的 JSON 数据包 使用示例:: from wechatpy import WeChatClient client = WeChatClient('appid', 'secret') res = client.semantic.search( '查一下明天从北京到上海的南航机票', 'flight,hotel', city='北京' ) """ if isinstance(category, (tuple, list)): category = ",".join(category) data = optionaldict() data["query"] = query data["category"] = category data["uid"] = uid data["latitude"] = latitude data["longitude"] = longitude data["city"] = city data["region"] = region data["appid"] = self._client.appid return self._post(url="https://api.weixin.qq.com/semantic/semproxy/search", data=data)