Python爬蟲如何獲取小區(qū)經(jīng)緯度以及結(jié)構(gòu)化地址?
一般社區(qū)的經(jīng)緯度信息不會(huì)包含在網(wǎng)頁(yè)中,可以不能通過(guò)使用Python爬蟲直接獲得。可以先獲取小區(qū)名稱,然后借助某個(gè)地圖API間接獲取經(jīng)緯度信息。下面我簡(jiǎn)單介紹一下實(shí)現(xiàn)過(guò)程,有興趣的朋友可以試試:
1.首先,注冊(cè)一個(gè)地圖開發(fā)者。用自己的賬號(hào)登錄即可。點(diǎn)擊"控制臺(tái)和并切換到管理頁(yè)面,如下所示:
2.然后創(chuàng)建一個(gè)應(yīng)用程序。這里我們根據(jù)像元名稱得到經(jīng)緯度信息,這是一個(gè)正向地理編碼的過(guò)程,所以需要選擇應(yīng)用類型為服務(wù)器,如下,自己設(shè)置應(yīng)用名稱即可:
3.創(chuàng)建完成后會(huì)自動(dòng)跳轉(zhuǎn)到應(yīng)用管理頁(yè)面,如下,這里我們需要記住這個(gè)AK值,后面的Python程序會(huì)用這個(gè)AK值訪問(wèn)API接口:
4.至于使用,這里的官方文檔有詳細(xì)的描述,包括請(qǐng)求參數(shù),返回結(jié)果等。如下,有具體的解釋和例子。如果你有一定的編程基礎(chǔ),熟悉文檔,應(yīng)該思路清晰,可以直接寫代碼:
5.測(cè)試代碼如下,非常簡(jiǎn)單。它主要構(gòu)造輸入?yún)?shù),包括地址、ak和輸出。輸出結(jié)果是一個(gè)json對(duì)象,可以通過(guò)直接解析獲得經(jīng)緯度信息。如下,更多參數(shù)描述可以參考官方文檔,非常清楚:
程序截圖如下,已成功獲取社區(qū)(街道)的經(jīng)緯度信息。為了更準(zhǔn)確地定位,建議輸入詳細(xì)的地址信息:
至此,我們已經(jīng)完成了使用Python獲取社區(qū)的經(jīng)緯度信息??偟膩?lái)說(shuō),整個(gè)過(guò)程很簡(jiǎn)單。只要熟悉以上流程,很快就能掌握。我建議仔細(xì)閱讀官方文件,你可以獲得更多有用的信息。當(dāng)然,也可以通過(guò)反向地理編碼,即根據(jù)經(jīng)緯度,得到小區(qū)(街道信息)信息。網(wǎng)上也有相關(guān)教程。有興趣的可以搜一下。希望上面分享的內(nèi)容能對(duì)你有所幫助。也歡迎大家評(píng)論和評(píng)論。
可以使用百度api或者其他地圖API,通過(guò)社區(qū)名稱獲取社區(qū)的地址和經(jīng)緯度。但由于API返回的值中的地址形式不同,我們可以先爬取社區(qū)名稱來(lái)獲取社區(qū)的經(jīng)緯度,再用經(jīng)緯度反推得到社區(qū)的結(jié)構(gòu)化地址。此外,如果社區(qū)名稱是...數(shù)量和數(shù)量。;,可以在數(shù)字后面加一個(gè)四合院在爬蟲啟動(dòng)之前,準(zhǔn)確率更高。這次寫入程序更方便二次使用,只需傳遞一個(gè)datafram
有了python和前端基礎(chǔ),有什么python爬蟲書推薦?
你需要了解的技術(shù)包括但不限于Python編程語(yǔ)言和HTTP協(xié)議。討論(TCP/IP協(xié)議棧)、數(shù)據(jù)庫(kù)、Linux等知識(shí)。
Python簡(jiǎn)介:《AByteofPython》
HTTP簡(jiǎn)介:《圖解HTTP》
數(shù)據(jù)庫(kù)介紹:《MySQL必知必會(huì)》
Linux簡(jiǎn)介:《快樂的Linux命令行》
規(guī)律性介紹:《精通正則表達(dá)式》
還有一本專門介紹爬行動(dòng)物的書:《《用Python寫網(wǎng)絡(luò)爬蟲》》。
跟小卡特學(xué)Python是一本非常好的學(xué)習(xí)Python的書。