def getaddress(self):
     print('lat : {},lng : {}'.format(self.lat, self.lng))
     print('enter  getaddress: {},{}'.format(self.lat, self.lng))
     url = 'http://api.map.baidu.com/geocoder/v2/'
     output = 'json'
     ak = '12343454565678787988888888888888'#输入自己的百度ak
     uri = url + '?' + 'location=' + str(self.lat) + ',' + str(
         self.lng) + '&output=' + output + '&pois=1' + '&ak=' + ak
     temp = html_from_uri(uri)
     soup = BeautifulSoup(temp, 'lxml')
     print(soup.prettify())
     my_address = json.loads(soup.find('p').text)
     print('my_address: {}'.format(my_address))
     if my_address['status'] == 0:  # 服务请求正常召回
         address = my_address['result']['formatted_address']
         print('address in getaddress:{}'.format(address))
 def getlocation(self):
     address = self.address_of_location()
     url = 'http://api.map.baidu.com/geocoder/v2/'
     output = 'json'
     ak = '12343454565678787988888888888888'#输入自己的百度ak
     uri = url + '?' + 'address=' + address + '&output=' + output + '&ak=' + ak
     temp = html_from_uri(uri)
     soup = BeautifulSoup(temp, 'lxml')
     print(soup.prettify())
     my_location = json.loads(soup.find('p').text)
     print('my_location: {}'.format(my_location))
     if my_location['status'] == 0:  # 服务请求正常召回
         self.lat = my_location['result']['location']['lat']  # 纬度
         self.lng = my_location['result']['location']['lng']  # 经度
         self.precise = my_location['result']['precise']
         # 位置的附加信息,是否精确查找。1为精确查找,即准确打点;0为不精确,即模糊打点(模糊打点无法保证准确度,不建议使用)。
         self.confidence = my_location['result']['confidence']
         # 可信度,描述打点准确度,大于80表示误差小于100m。该字段仅作参考,返回结果准确度主要参考precise参数。
     print('precise: {},confidence: {},lat: {},lng: {}'.format(self.precise, self.confidence, self.lat, self.lng))
     print('{},{}'.format(self.lat, self.lng))
     print('{},{}'.format(self.lng, self.lat))