lbs.client.qq.api.tools 源代码

# encoding: utf-8
from __future__ import absolute_import, unicode_literals

from optionaldict import optionaldict

from . import base


[文档]class Tools(base.QQMapBaseApi): """ 工具 """
[文档] def district_list(self): """ 获取全部行政区划数据 https://lbs.qq.com/webservice_v1/guide-region.html """ return self._get("/ws/district/v1/list")
[文档] def district_getchildren(self, _id=None): """ 获取指定行政区划的子级行政区划 https://lbs.qq.com/webservice_v1/guide-region.html :param _id: 父级行政区划ID """ return self._get("/ws/district/v1/getchildren", optionaldict({'id': _id}))
[文档] def distance(self, _from, to, mode='driving'): """ 距离计算(一对多) https://lbs.qq.com/webservice_v1/guide-distance.html :param _from: 起点坐标 :param to: 终点坐标 :param mode: 计算方式 """ _from, from_num = self._parse_location(_from) to, to_num = self._parse_location(to) if from_num == 0 or to_num == 0 or (from_num > 1 and to_num > 1): raise ValueError("from和to参数仅可有一个为多坐标") return self._get("/ws/distance/v1/", {"from": _from, 'to': to, 'mode': mode})
[文档] def distance_matrix(self, _from, to, mode='driving'): """ 距离计算(多对多) https://lbs.qq.com/webservice_v1/guide-distancematrix.html :param _from: 起点坐标 :param to: 终点坐标 :param mode: 计算方式 """ _from, _ = self._parse_location(_from) to, _ = self._parse_location(to) return self._get("/ws/distance/v1/matrix", {"from": _from, 'to': to, 'mode': mode})
[文档] def translate(self, locations, _type=5): """ 坐标转换 https://lbs.qq.com/webservice_v1/guide-convert.html :param locations: 预转换的坐标 :param _type: 输入的locations的坐标类型 """ locations, _ = self._parse_location(locations) return self._get("/ws/coord/v1/translate", {"locations": locations, 'type': _type})
[文档] def ip(self, ip): """ IP定位 https://lbs.qq.com/webservice_v1/guide-ip.html :param ip: IP地址 """ return self._get("/ws/location/v1/ip ", {"ip": ip})