最新公告
  • 29分享网为网络创业者提供小本创业、零成本项目、新媒体运营等方面资源。
  • 手机怎么查经纬度(高德地图经纬度数据查询)

    在这里插入图片描述

    @Author : Runsen

    高德地图【东莞理工学院】

    如下链接为从高德地图获取【东莞理工学院】这个区域边界经纬度坐标点的链接

    https://ditu.amap.com/service/poiInfo?query_type=TQUERY&keywords=%E4%B8%9C%E8%8E%9E%E7%90%86%E5%B7%A5%E5%AD%A6%E9%99%A2

    可以发现,访问该链接返回的数据是以json格式存储的,如果直接存储返回的网页,那么默认保存格式应该为json 目标是将该json文件中区域边缘点的经纬度坐标提取出来

    # 引如requess库importrequests# 下载数据data= requests.get(url=’http://ditu.amap.com/service/poiInfo?query_type=TQUERY&keywords=东莞理工学院’)data.text# 导入json包importjson# 利用json包把上述字符串解析成Python字典js= json.loads(data.text)

    在这里插入图片描述

    # 再看嵌套的小字典data的keysjs[‘data’].keys() dict_keys([‘codepoint’, ‘code’, ‘suggestion’, ‘timestamp’, ‘lqii’, ‘is_general_search’, ‘result’, ‘keywords’, ‘message’, ‘total’, ‘busline_list’, ‘bus_list’, ‘general_flag’, ‘bounds’, ‘version’, ‘busline_count’, ‘magicbox_data’, ‘interior_count’, ‘poi_list’])

    # 查看输出,我们知道区域边缘坐标点应该是保存在key = ‘poi_list’对应的value中的,把它提取出来js[‘data’][‘poi_list’]

    g

    以下是全代码

    # 引如requess库import requests # 下载数据data = requests.get(url=’http://ditu.amap.com/service/poiInfo?query_type=TQUERY&keywords=东莞理工学院’) # 导入json包import json # 利用json包把上述字符串解析成Python字典js = json.loads(data.text) # 将结果保存下来,进行下一步解析points1 = js[‘data’][‘poi_list’][0][‘bound’] points2 = js[‘data’][‘poi_list’][1][‘bound’] # 用‘_’来分割这些点,会生成一个列表points= points1.split(‘_’) import pandas as pd df = pd.DataFrame(points,columns=[‘lat_lng’]) # 把经度解析出来df[‘longitude’] = df[‘lat_lng’].apply(lambda s:s.split(‘,’)[0]) # 把纬度解析出来df[‘latitude’] = df[‘lat_lng’].apply(lambda s:s.split(‘,’)[1]) # 删掉第一个字段df = df.drop(‘lat_lng’,axis = 1) # 把数据保存到本地df.to_csv(‘./data/scau.csv’,index = False)

    现在试下抓取的数据 用的