日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

省市区(县)行政区划境界线(geojson)获取说明及代码

發(fā)布時間:2024/3/24 编程问答 71 豆豆
生活随笔 收集整理的這篇文章主要介紹了 省市区(县)行政区划境界线(geojson)获取说明及代码 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
  • 高德地圖行政區(qū)劃查詢接口說明 ? ? ? ?

? ? ? ? 高德地圖WEB服務(wù)API提供了很多實(shí)用的Web接口,申請完高德地圖key(詳見獲取key),就可以使用。本篇博文介紹的行政區(qū)劃境界線下載,使用的是行政區(qū)劃查詢這個接口,接口訪問url如下:

https://restapi.amap.com/v3/config/district?key=申請的key&keywords=$&subdistrict=0&extensions=all

下面對這個接口的關(guān)鍵參數(shù)進(jìn)行簡單說明:

? ? (1)keywords:查詢關(guān)鍵字,支持 行政區(qū)名稱、citycode、adcode,adcode信息可參考城市編碼表;

? ? (2)subdistrict:子級行政區(qū),設(shè)置顯示下級行政區(qū)級數(shù)(行政區(qū)級別包括:國家、省/直轄市、市、區(qū)/縣、鄉(xiāng)鎮(zhèn)/街道多級數(shù)據(jù)),可選值:0、1、2、3等數(shù)字,并以此類推,含義如下:

? ? ? ? 0:不返回下級行政區(qū);

? ? ? ? 1:返回下一級行政區(qū);

? ? ? ? 2:返回下兩級行政區(qū);

? ? ? ? 3:返回下三級行政區(qū);

? ? ?特別說明:因需要獲取的是境界線數(shù)據(jù),即使設(shè)置返回下級行政區(qū),返回的也只是屬性信息,不包含子行政區(qū)的境界線數(shù)據(jù)。

? ? (3)extensions:此項(xiàng)控制行政區(qū)信息中返回行政區(qū)邊界坐標(biāo)點(diǎn); 可選值:base、all;

? ? ? ? base:不返回行政區(qū)邊界坐標(biāo)點(diǎn);

? ? ? ? all:只返回當(dāng)前查詢district的邊界值,不返回子節(jié)點(diǎn)的邊界值;

? ? ? ? 目前不能返回鄉(xiāng)鎮(zhèn)/街道級別的邊界值

? ? 因此,在本例中需要設(shè)置為?all。

  • 抓取省市縣等行政區(qū)劃數(shù)據(jù)思路

? ? ? ? (1)指定抓取的區(qū)域,可為adcode,citycodes或行政區(qū)劃名稱;

? ? ? ? (2)利用高德地圖接口請求數(shù)據(jù);

? ? ? ? (3)對邊界點(diǎn)數(shù)據(jù)進(jìn)行解析,并處理成geojson格式;

? ? ? ? ? ? ? ? 解析過程中,要注意多部件的問題(即MultiPolygon的情況)。

? ? ? ? (4)將結(jié)果保存成json格式。

  • 抓取代碼(真實(shí)可用)

? ? ? ? 下面是抓取全國省級行政區(qū)邊界線并將所有數(shù)據(jù)最終處理成geojson格式并保存的代碼,本例親自編寫并測試有效,數(shù)據(jù)已應(yīng)用在實(shí)際項(xiàng)目中,需要的可直接使用。

''' Created on 2018年12月26日@author: QinChao @description:請求高德地圖行政區(qū)劃數(shù)據(jù) '''adcodes = {'110000':'北京市','120000':'天津市','130000':'河北省','140000':'山西省','150000':'內(nèi)蒙古自治區(qū)','210000':'遼寧省','220000':'吉林省','230000':'黑龍江省','310000':'上海市','320000':'江蘇省','330000':'浙江省','340000':'安徽省','350000':'福建省','360000':'江西省','370000':'山東省','410000':'河南省','420000':'湖北省','430000':'湖南省','440000':'廣東省','450000':'廣西壯族自治區(qū)','460000':'海南省','500000':'重慶市','510000':'四川省','520000':'貴州省','530000':'云南省','540000':'西藏自治區(qū)','610000':'陜西省','620000':'甘肅省','630000':'青海省','640000':'寧夏回族自治區(qū)','650000':'新疆維吾爾自治區(qū)','710000':'臺灣省','810000':'香港特別行政區(qū)','820000':'澳門特別行政區(qū)','900000':'外國' }url = 'https://restapi.amap.com/v3/config/district?key=申請的高德地圖key&keywords=$&subdistrict=0&extensions=all'import urllib.request import simplejson import jsondef request_district(keyword):print('key:', url.replace('$', keyword))return simplejson.loads(urllib.request.urlopen(url.replace('$', keyword)).read())def struct_feature(coords, adcodes, name):return {'type': 'Feature','geometry': {'type': coords['type'],'coordinates': coords['coords']},'properties':{'adcodes': adcodes,'name': name}}def struct_coordinates(data):coordinates = []type = 'Polygon'districts = data['districts'][0]polyline_str = districts['polyline']district = polyline_str.split('|')# 由多部分構(gòu)成,為多部件if len(district) > 1:type = 'MultiPolygon'for part in district:coordinate = []coords = part.split(';')for coord in coords:x, y = coord.split(',')coordinate.append([float(x), float(y)])if len(coordinate) > 200:coordinates.append([coordinate])else:coordinate = []coords = district[0].split(';')for coord in coords:x, y = coord.split(',')coordinate.append([float(x), float(y)])coordinates.append(coordinate)return {'type': type,'coords': coordinates}def write_content(file_path, content, file_type = 'txt', mode = 'w'):'''文本內(nèi)容寫入file_path--- 寫入文件路徑content--- 寫入內(nèi)容file_type--- 文件格式, 默認(rèn)為txt, 其他包括jsonmode--- 文件打開模式'''with open(file_path, mode) as f:if file_type == 'txt':f.writelines(content)elif file_type == 'json':json.dump(content, f)f.flush()f.close()if __name__ == "__main__":province_geojson = {'type': 'FeatureCollection','features': []}for adcode in adcodes.keys():print('adcode:', adcode)src_data = request_district(adcode)coordinates = struct_coordinates(src_data)feature = struct_feature(coordinates, adcode, adcodes[adcode])province_geojson['features'].append(feature)write_content('G:/heze.json', province_geojson, 'json')

?

總結(jié)

以上是生活随笔為你收集整理的省市区(县)行政区划境界线(geojson)获取说明及代码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 天天玩天天操 | 污网站在线播放 | 狠狠操天天操 | 手机看黄色 | 91麻豆国产在线观看 | 韩日av网站 | 国产精品97 | 香蕉视频在线免费播放 | 精品人妻一区二区三区含羞草 | 人人舔| 国产精品4p | 亚洲乱视频 | 在线看片不卡 | 女女同性女同一区二区三区按摩 | 亚洲男人的天堂在线视频 | 少妇激情一区二区三区视频 | 无人在线观看的免费高清视频 | 美女三级网站 | 狠狠爱免费视频 | 欧美精品一区二区三区四区 | 精品国产免费无码久久久 | 僵尸叔叔在线观看国语高清免费观看 | 国产欧美一区二区三区白浆喷水 | 精品国产一区二区三区久久狼黑人 | 亚洲国产18| 一区二区在线免费视频 | 成人亚洲视频 | 欧美亚洲91 | 一卡二卡国产 | 亚洲免费久久 | 欧美午夜小视频 | 野外一级片 | 少妇高潮惨叫久久久久久 | 操亚洲女人 | 欧美成人精品欧美一级乱黄 | 久草色在线 | 成av在线 | 99在线小视频 | 国产精品成人在线观看 | 超碰五月天 | 激情黄色av| 一二区精品| 91av看片 | 看黄色小视频 | 色一情一乱一伦一区二区三区 | 黄色视屏免费 | 久久久精品麻豆 | 在线观看国产一级片 | 国产国语性生话播放 | 涩色网 | 国产精品99精品 | 国产午夜精品一区二区三区四区 | 亚洲综合小说网 | 成人91| 亚洲一区二区三区麻豆 | 色av一区 | 一级成人黄色片 | 国产一级二级av | 污污视频免费网站 | aaaaaa毛片 | 高清一区二区 | 国产av无码国产av毛片 | 爱爱视频免费看 | 高清av免费观看 | 奇米一区 | 亚洲一区二区视频在线观看 | 经典三级第一页 | 成人性生交大片免费卡看 | 欧美日韩一二三 | 水果视频污 | 中文字幕在线视频网站 | 91视频在线视频 | 欧美在线一二三 | 色多多污污 | 国产成人精品一区二区无码呦 | 国产成人a∨ | 久久久999 | 秋霞无码一区二区 | 女女h百合无遮涩涩漫画软件 | 亚洲xx网站 | av网址免费观看 | 亚洲天堂精品在线观看 | 成人精品区 | 伊人网五月天 | 97久久国产| 一级淫片免费 | 天海翼中文字幕 | 午夜影院在线看 | 亚洲一 | 久久在线中文字幕 | 精品无码人妻一区 | 日韩少妇内射免费播放 | av色成人 | 日本午夜免费 | 欧美精品久久久 | 亚洲调教 | 青青草娱乐在线 | 亚洲精品视频在线 | 亚洲射射 |