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

基于Python爬取POI在城市地理國情監(jiān)測中的應(yīng)用

2021-07-05 09:38:08方德濤
地理空間信息 2021年6期
關(guān)鍵詞:醫(yī)院

方德濤

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

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

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

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

1 數(shù)據(jù)與方法

1.1 研究區(qū)概況

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

圖1 丹東市城市地理國情監(jiān)測范圍

1.2 數(shù)據(jù)源

研究數(shù)據(jù)源包括2018年基礎(chǔ)性地理國情監(jiān)測的地表覆蓋和地理國情要素成果、市轄區(qū)和中心城區(qū)界線在內(nèi)的城市行政區(qū)劃界線、2018年基礎(chǔ)性地理國情監(jiān)測項目優(yōu)于1 m分辨率的正射影像以及2018年《中國城市統(tǒng)計年鑒》,開源大數(shù)據(jù)等專題資料。

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

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

1.3 技術(shù)路線

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

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

圖2 基本公共服務(wù)設(shè)施提取技術(shù)流程圖

2 基于Python的POI獲取

2.1 Python介紹與基本設(shè)置

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

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

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

2.2 獲取單頁POI數(shù)據(jù)

定義獲取單頁POI數(shù)據(jù)函數(shù)。主要功能是拼接出用于HTTP請求的req_url,并獲取某個關(guān)鍵詞返回的單頁POI數(shù)據(jù),高德地圖建議每頁記錄數(shù)據(jù)不應(yīng)超過25個,返回類型為JSON格式。poi_search_url為高德地圖關(guān)鍵字搜索API服務(wù)地址,其后為地址參數(shù),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數(shù)據(jù)

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

核心代碼:

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('市縣區(qū):%s' % adname, '關(guān)鍵詞:%s' %keyword, '爬取到 %d' % len(poiList), '個 POI')

return poiList

2.4 保存 POI數(shù)據(jù)

定義保存POI數(shù)據(jù)至Excel文件函數(shù)。主要功能是創(chuàng)建Excel工作簿,添加以關(guān)鍵詞為名稱的工作表,將獲取的POI數(shù)據(jù)寫入單元格中,并保存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 城市基本公共服務(wù)水平監(jiān)測與分析

3.1 POI數(shù)據(jù)處理與入庫

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

基本公共服務(wù)設(shè)施中學(xué)校采集面積大于1 600 m2的全日制教育大中小學(xué)校等教育機構(gòu)范圍線構(gòu)面,其他的采集定位點;醫(yī)院采集面積大于1 600 m2的一二三級十等醫(yī)院范圍線構(gòu)面,社區(qū)衛(wèi)生服務(wù)機構(gòu)和其他醫(yī)療衛(wèi)生機構(gòu)采集定位點。

最終基于Python爬蟲獲取POI數(shù)據(jù)應(yīng)用于丹東市城市地理國情監(jiān)測基本公共服務(wù)設(shè)施的各類教育機構(gòu)為17個、各類醫(yī)療機構(gòu)為10個,丹東市基本公共服務(wù)設(shè)施統(tǒng)計結(jié)果如表1所示。

表1 丹東市基本公共服務(wù)設(shè)施統(tǒng)計表

3.2 統(tǒng)計分析

利用Python采集的學(xué)校、醫(yī)院POI數(shù)據(jù),結(jié)合基礎(chǔ)性地理國情監(jiān)測成果、統(tǒng)計數(shù)據(jù)及其他專參考資料數(shù)據(jù),整合基礎(chǔ)性地理國情監(jiān)測成果中的社會福利機構(gòu)、體育活動場所等基礎(chǔ)設(shè)施數(shù)據(jù),利用公共服務(wù)設(shè)施的數(shù)量、服務(wù)范圍、人均擁有量等指標從基本公共服務(wù)設(shè)施均衡度、便捷度以及服務(wù)水平等方面進行監(jiān)測與綜合分析。

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

表2 丹東市人均教育醫(yī)療指標

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

圖3 丹東市教育機構(gòu)覆蓋范圍圖

圖4 丹東市醫(yī)療機構(gòu)覆蓋范圍圖

4 結(jié) 語

在以丹東市城市地理國情監(jiān)測為實例的城市基本公共服務(wù)水平監(jiān)測與分析中,利用Python語言開發(fā)爬蟲程序,實現(xiàn)了開源大數(shù)據(jù)中教育、醫(yī)療機構(gòu)POI數(shù)據(jù)獲取,對地理國情監(jiān)測數(shù)據(jù)進行了補充,并結(jié)合統(tǒng)計和監(jiān)測數(shù)據(jù),對城市基本公共服務(wù)設(shè)施的分布現(xiàn)狀、覆蓋范圍、人均用地面積等進行統(tǒng)計分析,實驗表明:

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

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

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

猜你喜歡
醫(yī)院
我不想去醫(yī)院
兒童繪本(2018年10期)2018-07-04 16:39:12
大醫(yī)院為何要限診?
急診醫(yī)院:急救的未來?
迎接兩孩 醫(yī)院準備好了嗎
大醫(yī)院不要再這么忙
萌萌兔醫(yī)院
帶領(lǐng)縣醫(yī)院一路前行
看不見的醫(yī)院
減少對民營醫(yī)院不必要的干預(yù)
為縣級醫(yī)院定錨
主站蜘蛛池模板: 青青草原国产av福利网站| 亚洲欧美日韩另类| 亚洲国产欧美自拍| 蝌蚪国产精品视频第一页| 国产精品9| 成人免费午间影院在线观看| 国产成人综合亚洲欧美在| 国产在线观看精品| 亚洲视频在线青青| 色老头综合网| 欧美第一页在线| 国产午夜福利在线小视频| 精品国产三级在线观看| 久久精品91麻豆| 免费av一区二区三区在线| 综合色区亚洲熟妇在线| 午夜不卡视频| 美女一级毛片无遮挡内谢| 亚洲色无码专线精品观看| 欧美日韩午夜视频在线观看| 国产精品无码一区二区桃花视频| 欧美国产综合视频| 久久免费观看视频| 国产成人亚洲日韩欧美电影| 777国产精品永久免费观看| 国产精品第一区| 都市激情亚洲综合久久| V一区无码内射国产| 国产91在线|中文| 在线观看亚洲国产| 国产精品视频3p| 国产成人精品无码一区二| 91蜜芽尤物福利在线观看| 国产成人精品亚洲77美色| 亚洲第一成年免费网站| 国产精品成人免费综合| 久久综合结合久久狠狠狠97色| 久久综合亚洲鲁鲁九月天| 女人18毛片久久| 18禁黄无遮挡网站| 国产永久在线观看| 午夜爽爽视频| 无码日韩视频| 无码内射中文字幕岛国片| 国产精品冒白浆免费视频| 亚洲一区波多野结衣二区三区| a毛片基地免费大全| 亚洲码一区二区三区| 亚洲色图在线观看| 亚洲一区二区约美女探花| 亚洲综合久久成人AV| 国产欧美日韩另类精彩视频| 丰满人妻中出白浆| 亚洲高清中文字幕| 中文字幕永久在线看| 尤物成AV人片在线观看| 91系列在线观看| 日本91视频| 久久亚洲美女精品国产精品| 黄色国产在线| 九九香蕉视频| 亚洲无码不卡网| 99视频免费观看| 婷婷开心中文字幕| 久久综合五月| 欧美有码在线观看| 中文国产成人精品久久| 91成人在线观看| 婷婷综合在线观看丁香| 成人午夜天| 精品三级网站| 久久天天躁夜夜躁狠狠| 伊人久久精品无码麻豆精品| 人妻无码中文字幕第一区| 啪啪啪亚洲无码| 2021精品国产自在现线看| 永久免费精品视频| 久久毛片基地| 又粗又大又爽又紧免费视频| 亚洲欧洲日产国产无码AV| 中文字幕第4页| 激情在线网|