999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Python爬取POI在城市地理國情監測中的應用

2021-07-05 09:38:08方德濤
地理空間信息 2021年6期
關鍵詞:醫院

方德濤

(1.遼寧省自然資源事務服務中心,遼寧 沈陽 110034)

自2016年開始,基于地理國情監測的全國地級以上城市及典型城市群空間格局變化監測已連續開展了兩年,并于2018年變更為城市地理國情監測,且監測內容逐年增加。為符合新型城鎮化建設需求,在2018年城市空間綜合監測中增加了基本公共服務設施監測、綜合交通網絡設施監測,目的是能夠為新型城鎮化政策制定提供切實的數據支撐和決策依據[1-2]。

在城市基本公共服務設施監測中,需要在2018年基礎性地理國情監測的地理單元的城鎮綜合功能單元成果中,提取的學校和醫院數據作為本底數據,結合收集的開源大數據以及其他專題資料,利用2018年高分辨率遙感影像,通過人工目視解譯的方式提取監測區范圍內的學校和醫院等城市基本公共服務設施。如何收集并利用開源數據服務于城市基本公共服務設施監測成為急需解決的問題之一。

本文以遼寧省丹東市為例,利用Python語言及其標準庫與第三方模塊開發爬蟲程序,獲取高德地圖興趣點(POI)學校與醫院數據,作為基礎性地理國情監測的地理單元成果中學校、醫院等數據的補充,結合城市的社會、經濟、人口、土地利用等統計和監測數據,對城市基本公共服務設施的分布現狀、覆蓋范圍、人均用地面積等進行統計分析。

1 數據與方法

1.1 研究區概況

丹東市是城市地理國情監測項目中遼寧省10個國審城市之一,位于鴨綠江北岸,東與朝鮮新義州市隔江相望,南臨黃海,西界鞍山,西南與大連市毗鄰,北與本溪市接壤,下轄三區三縣(市)和一個國家級邊境經濟合作區[3-4]。本次城市地理國情監測范圍是丹東市市轄區范圍,即元寶區、振興區、振安區三區范圍(見圖1所示),監測面積約為911.7 km2。

圖1 丹東市城市地理國情監測范圍

1.2 數據源

研究數據源包括2018年基礎性地理國情監測的地表覆蓋和地理國情要素成果、市轄區和中心城區界線在內的城市行政區劃界線、2018年基礎性地理國情監測項目優于1 m分辨率的正射影像以及2018年《中國城市統計年鑒》,開源大數據等專題資料。

丹東市市轄區遙感影像采用6景0.8 m地面分辨率北京二號衛星遙感影像、2景0.5 m分辨率高景衛星遙感影像,對于空洞區域沒有優于1 m分辨率正射影像時,采用了2 m地面分辨率2景高分一號和2景天繪一號衛星遙感影像數據作為補充影像數據源。

開源大數據主要來源是互聯網電子地圖,國內主要運營商包括百度地圖、高德地圖、騰訊地圖、圖吧地圖等。我國公開出版電子地圖至少采用GCJ-02加密算法進行坐標偏移處理,百度地圖和圖吧地圖等還在此基礎上進行了二次加密,形成了各自的坐標系統[5-6]。為了開發簡單有效,本文采用了僅經過一次加密且數據質量較好的高德地圖作為開源POI數據來源。

1.3 技術路線

城市空間綜合要素集提取是利用2018年優于1 m分辨率影像數據,2018年基礎性地理國情監測數據,數字地理空間框架建設,智慧城市時空云平臺建設成果及其他專題資料,以2017年全國地級以上城市及典型城市群空間格局變化監測成果為基礎,完成遼寧省丹東市2018年市轄區范圍內城區邊界、建設用地邊界、城市建設用地、基本公共服務設施、綜合交通網絡設施數據的提取,形成監測數據集。

基本公共服務設施提取主要結合基礎性地理國情監測成果數據和其他專題資料,完成遼寧省丹東市市轄區范圍內的學校和醫院2類基本公共服務設施用地的數據采集。首先從2018年基礎性地理國情監測的地理單元的城鎮綜合功能單元成果中提取學校、醫院等數據作為本底數據,結合收集的開源大數據以及其他專題資料,利用2018年高分辨率遙感影像,通過人工目視解譯的方式提取監測區范圍內的學校和醫院。將學校按照基礎性地理國情監測采集的大、中、小學校進行校核和補充采集,對醫院補充采集基礎性地理國情監測采集不全或遺漏的一、二、三級十等醫院,并補充采集社區衛生服務站及其他醫療衛生機構定位點。對于內業無法判別的地物,采用外業調繪核查的方式采集,基本公共服務設施信息提取技術流程如圖2所示。

圖2 基本公共服務設施提取技術流程圖

2 基于Python的POI獲取

2.1 Python介紹與基本設置

Python是一種簡單易學、功能強大的基于C語言實現的腳本語言,廣泛地應用于地理信息數據批處理以及地理統計分析當中[7-8]。Python不僅內置了強大的標準庫,Python社區還提供了大量使用方式與標準庫類似、覆蓋多個領域的第三方模塊[9]。本文基于Python獲取高德地圖POI需要導入用于操作URL功能的urllib和處理JSON格式的json兩個標準庫,以及用于寫入Excel的第三方xlwt模塊。

爬取POI的過程大致可分為三步:首先需要在高德開放平臺注冊開發者賬號,登錄平臺后申請API密鑰(Key)并綁定Web服務;其次要拼接HTTP請求的URL,申請的Web服務API Key需作為必填參數一同發送;最后需要接收HTTP請求返回的JSON格式數據,并解析和獲取數據,接口的輸入參數和輸出數據全部為UTF-8編碼。

在高德地圖Web服務API接口當中,可通過city&citylimit參數指定POI搜索的城市或區縣。city參數能夠接收citycode和adcode,citycode僅能精確到城市, adcode卻能夠精確到區縣。由于高德地圖API每次請求最多返回900個POI信息,為了獲得全面的POI數據,本文采用adcode參數用于縮小搜索范圍,并且設置更加詳細關鍵詞,具體可參考高德地圖《POI分類編碼和城市編碼表》。

2.2 獲取單頁POI數據

定義獲取單頁POI數據函數。主要功能是拼接出用于HTTP請求的req_url,并獲取某個關鍵詞返回的單頁POI數據,高德地圖建議每頁記錄數據不應超過25個,返回類型為JSON格式。poi_search_url為高德地圖關鍵字搜索API服務地址,其后為地址參數,amap_api_key為申請的API密鑰。

核心代碼:

def getPoi(adcode, keyword, page):

req_url = poi_search_url + 'key=' + amap_api_key +'&keywords=' + quote(keyword) + '&city=' + str(adcode) +'&citylimit=true' + '&offset=25' + '&page=' + str(page) +'&extensions=all&output=json'

response = request.urlopen(req_url)

data = response.read().decode('utf-8')

return data

2.3 獲取全部POI數據

定義獲取全部POI數據函數。主要功能是建立收集POI數據的空列表,并調用獲取單頁POI數據函數,獲取的某個關鍵詞返回的全部POI數據。當count計數為0時,退出while循環,將獲取的全部POI數據存入列表,并打印獲取POI個數。

核心代碼:

def getPois(adname, adcode, keyword):

i = 1

poiList = []

while True:

result = getPoi(adcode, keyword, i)

result = json.loads(result)

if result['count']== '0':

break

poi = result['pois']

poiList += poi

i += 1

print('市縣區:%s' % adname, '關鍵詞:%s' %keyword, '爬取到 %d' % len(poiList), '個 POI')

return poiList

2.4 保存 POI數據

定義保存POI數據至Excel文件函數。主要功能是創建Excel工作簿,添加以關鍵詞為名稱的工作表,將獲取的POI數據寫入單元格中,并保存Excel文件。

核心代碼:

def json_to_excel(keyword, poiList):

workbook = xlwt.Workbook(encoding='utf-8')

worksheet = workbook.add_sheet(keyword, True)

worksheet.write(0, 0, 'Name')

worksheet.write(0, 1, 'Lon')

worksheet.write(0, 2, 'Lat')

for i in range(len(poiList)):

name = poiList[i]['name']

location = poiList[i]['location']

lon = str(location).split(',')[0]

lat = str(location).split(',')[1]

worksheet.write(i + 1, 0, name)

worksheet.write(i + 1, 1, lon)

worksheet.write(i + 1, 2, lat)

workbook.save(r'' + cityName + '_' + keyword + '.xls')

3 城市基本公共服務水平監測與分析

3.1 POI數據處理與入庫

利用Python開發爬蟲程序獲取到丹東市元寶區、振興區、振安區高德地圖POI數據共計888條,其中小學49條、中學47條、大學7條、培訓學校674條,醫院79條、社區衛生機構32條。以2018年基礎性地理國情監測的城鎮綜合功能單元成果BUCA、BUCP兩個要素類中提取學校、醫院等數據作為本底數據,將POI數據經過人工篩選,刪除與本底數據重復學校、醫院,刪除程序爬取多余數據條目,并根據城市空間綜合要素集提取要求確定補充的POI數據,對于內業無法準確識別的POI進行外業核查。

基本公共服務設施中學校采集面積大于1 600 m2的全日制教育大中小學校等教育機構范圍線構面,其他的采集定位點;醫院采集面積大于1 600 m2的一二三級十等醫院范圍線構面,社區衛生服務機構和其他醫療衛生機構采集定位點。

最終基于Python爬蟲獲取POI數據應用于丹東市城市地理國情監測基本公共服務設施的各類教育機構為17個、各類醫療機構為10個,丹東市基本公共服務設施統計結果如表1所示。

表1 丹東市基本公共服務設施統計表

3.2 統計分析

利用Python采集的學校、醫院POI數據,結合基礎性地理國情監測成果、統計數據及其他專參考資料數據,整合基礎性地理國情監測成果中的社會福利機構、體育活動場所等基礎設施數據,利用公共服務設施的數量、服務范圍、人均擁有量等指標從基本公共服務設施均衡度、便捷度以及服務水平等方面進行監測與綜合分析。

市轄區人均教育、醫療用地面積指標計算公式如表2所示。根據數據統計,丹東市市轄區每千人中小學數0.096 2個,每千人中中學數為0.069 2個,分別居遼寧省10個國審城市第一位和第二位;丹東市市轄區人均教育用地面積4.31 m2,人均醫療用地面積0.51 m2。

表2 丹東市人均教育醫療指標

學校覆蓋率統計為小學500 m緩沖區、中學1 000 m緩沖區內的房屋建筑區面積除以房屋建筑區總面積。醫院覆蓋率統計為三級醫院12 000 m緩沖區、二級醫院6 000 m緩沖區、一級醫院2 000 m緩沖區、其他醫院1 000 m緩沖區內的房屋建筑區面積除以房屋建筑區總面積。學校、醫院覆蓋率反映區域內教育、醫療覆蓋及完善程度。根據數據統計,丹東市市轄區小學、中學覆蓋率分別為35.22%和47.34%;三級、二級、一級和無等級醫院覆蓋率分別為76.67%、56.06%、33.08%和55.04%。丹東市教育、醫療機構覆蓋范圍如圖3、4所示。

圖3 丹東市教育機構覆蓋范圍圖

圖4 丹東市醫療機構覆蓋范圍圖

4 結 語

在以丹東市城市地理國情監測為實例的城市基本公共服務水平監測與分析中,利用Python語言開發爬蟲程序,實現了開源大數據中教育、醫療機構POI數據獲取,對地理國情監測數據進行了補充,并結合統計和監測數據,對城市基本公共服務設施的分布現狀、覆蓋范圍、人均用地面積等進行統計分析,實驗表明:

1)Python編程語言能夠在開源POI數據獲取中發揮重要作用。Python作為一種簡單易讀且可擴展性極強的高級編程語言,不僅能夠在地理空間分析中得到廣泛應用,還可以利用其標準庫與第三方模塊,開發爬蟲程序,高效、快速地獲取開源POI數據。在實際工作中,利用Python開發開源POI數據獲取程序,能夠最大減少外業采集興趣點的工作量,對今后地理國情監測項目具有重要的應用價值。

2)基于Python獲取POI數據可作為基礎性地理國情監測數據的重要補充。在地理國情監測項目中,需完整采集大中小學校、一二三級十等醫院等單位院落,但對培訓機構等其他教育學校、社區衛生服務機構和其他醫療衛生機構并沒有做采集要求,而在城市地理國情監測中則需要補充采集。利用Python開發爬蟲程序獲取開源POI數據能滿足城市地理國情監測的提取要求,補充地理國情監測數據不足,同時也為其他需要補充POI數據的地理監測項目提供參考。

3)如何獲取更準確、全面的POI數據還有值得探討的空間。高德地圖關鍵詞搜索最多返回900個POI信息,這對于基于大數據統計分析來說明顯是不夠的。通常有兩種思路:一是細化關鍵詞,例如本文將搜索關鍵詞“學校”細化成“小學”、“中學”、“大學”和“培訓學校”,但對于某些大城市依然無法獲取全部需要POI數據。二是縮小搜索范圍,將目標搜索范圍切塊,使其變成多個搜索區塊,逐一進行POI數據獲取,如何合理對目標搜索范圍進行切塊將會是下一步的研究方向。

猜你喜歡
醫院
我不想去醫院
兒童繪本(2018年10期)2018-07-04 16:39:12
大醫院為何要限診?
中國衛生(2016年10期)2016-11-13 01:07:44
急診醫院:急救的未來?
中國衛生(2016年3期)2016-11-12 13:23:36
迎接兩孩 醫院準備好了嗎
中國衛生(2016年3期)2016-11-12 13:23:20
大醫院不要再這么忙
中國衛生(2016年2期)2016-11-12 13:22:26
萌萌兔醫院
帶領縣醫院一路前行
中國衛生(2015年8期)2015-11-12 13:15:20
看不見的醫院
中國衛生(2014年11期)2014-11-12 13:11:28
減少對民營醫院不必要的干預
中國衛生(2014年8期)2014-11-12 13:00:54
為縣級醫院定錨
中國衛生(2014年7期)2014-11-10 02:33:12
主站蜘蛛池模板: 国产成人免费视频精品一区二区 | 97视频免费在线观看| 欧美一级大片在线观看| 综合社区亚洲熟妇p| 亚洲V日韩V无码一区二区| 久久久噜噜噜久久中文字幕色伊伊 | 久久国语对白| 99热这里只有精品在线播放| 找国产毛片看| 国产无遮挡猛进猛出免费软件| 92午夜福利影院一区二区三区| 无码精品国产dvd在线观看9久| 国产在线精品99一区不卡| 成人综合网址| 伊人久久大香线蕉影院| 999在线免费视频| 无码国产伊人| 韩日免费小视频| 成人免费午夜视频| 国产精品短篇二区| 亚洲AⅤ综合在线欧美一区| 亚洲一级毛片在线播放| 国产情侣一区二区三区| 亚洲人妖在线| 青青草国产一区二区三区| 久久国产精品嫖妓| 青青草91视频| 夜夜爽免费视频| 亚洲国产精品久久久久秋霞影院| 欧美特级AAAAAA视频免费观看| 狠狠色噜噜狠狠狠狠色综合久| 伊人AV天堂| 99视频精品在线观看| 亚洲综合精品香蕉久久网| 午夜三级在线| 丝袜国产一区| 亚洲人成网站18禁动漫无码| 在线观看国产精品一区| 99久久国产自偷自偷免费一区| 亚洲精品图区| 亚洲av片在线免费观看| 97在线观看视频免费| 粉嫩国产白浆在线观看| 97在线观看视频免费| 国产欧美日韩另类精彩视频| 不卡无码网| 色综合中文| 丰满人妻中出白浆| 久久综合丝袜长腿丝袜| 在线欧美a| 国产青青操| 色婷婷色丁香| 久久久久国产精品嫩草影院| 久久久久国产精品熟女影院| 国产精品无码久久久久AV| AV不卡国产在线观看| 国产亚洲精品va在线| 美女国产在线| 久久人搡人人玩人妻精品| 国产成人精品男人的天堂| 日本午夜在线视频| 在线视频一区二区三区不卡| 中国精品久久| а∨天堂一区中文字幕| 免费一极毛片| 99久久国产精品无码| 99热国产在线精品99| 午夜啪啪网| 日本午夜影院| 激情在线网| 免费观看精品视频999| 亚洲三级网站| 国产第一页免费浮力影院| 国产欧美日韩va| 午夜日b视频| 久久亚洲精少妇毛片午夜无码| 怡红院美国分院一区二区| 中文天堂在线视频| 2022精品国偷自产免费观看| 99视频在线精品免费观看6| 欧美在线视频a| 青青草原国产精品啪啪视频|