# -*- coding:utf-8 -*-
# author:ck_233 time:2020/3/16
import time
import requests
import pandas as pd
from pandas import DataFramedeveloper_key = '6M2BZ-5SOWU-ZF6VH-22KK6-OCT65-62BJU' # 这里为你申请的开发者key# 通过地址获取经纬度
def address_to_coordinate(address):base = "http://apis.map.qq.com/ws/geocoder/v1/?address={}&key={}".format(address, developer_key) # 地址解析,地址转坐标response = requests.get(base)answer = response.json()if(answer['status'] == 0):data = {'lng':answer['result']['location']["lng"], # 经度'lat':answer['result']['location']["lat"] # 纬度}else:data = {'lng':'error', 'lat':'error' }print(data)return data# 通过经纬度获取地址
def coordinate_to_address(lat_lng): # 注意入参格式:纬度,经度base = "https://apis.map.qq.com/ws/geocoder/v1/?location={}&get_poi={}&key={}".format(lat_lng, 1, developer_key) # 坐标转地址response = requests.get(base)answer = response.json()# print(answer)if(answer['status'] == 0):data = answer['result']['address']else:data = 'error'print(data)return data# 入参excel文件名,表名
def readExcel(filename, sheetname):data = pd.read_excel(filename, sheetname)# print(data)# 通过地址获取经纬度,并修改for index in range(0,len(data)):# 开发者并发有限制,根据情况来设置time.sleep(0.2)print(data.loc[index, '地址'])address = data.loc[index, '地址']lng_lat = address_to_coordinate(address)data.loc[index, '经度'] = lng_lat['lng']data.loc[index, '纬度'] = lng_lat['lat']# print(data)# 保存修改DataFrame(data).to_excel(filename, sheet_name=sheetname, index=False, header=True)if __name__ == '__main__':address_to_coordinate("武汉市青山区和平大道809号")coordinate_to_address("30.617353,114.360809")#readExcel('xxxx.xlsx', 'Sheet1')
下一篇:小品下课十分钟歌词