溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

大數(shù)據(jù)中如何批量獲取指定地址的經(jīng)緯度信息

發(fā)布時(shí)間:2021-12-06 15:54:56 來源:億速云 閱讀:732 作者:柒染 欄目:大數(shù)據(jù)

本篇文章給大家分享的是有關(guān)大數(shù)據(jù)中如何批量獲取指定地址的經(jīng)緯度信息,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

如何批量查詢地址經(jīng)緯信息?

抓包

大數(shù)據(jù)中如何批量獲取指定地址的經(jīng)緯度信息

  1. 打開https://jingweidu.51240.com/

  2. F12鍵(mac電腦快捷鍵option+command+I)打開開發(fā)者工具Network面板

  3. 搜索框輸入查詢地址,回車查詢

  4. 開發(fā)者工具Network會(huì)看到截圖中的網(wǎng)址

  5. 點(diǎn)擊Preview,能看到具體信息

1. 經(jīng)緯度查詢爬蟲函數(shù)query

1. 根據(jù)抓包分析,構(gòu)造網(wǎng)址模板template

2. 使用requests庫(kù)發(fā)起訪問

3. 使用正則表達(dá)式re庫(kù)解析出經(jīng)緯度信息

import requests

def query(addr):
    #查詢addr的經(jīng)緯度
    template = 'https://apis.map.qq.com/jsapi?qt=geoc&addr={addr}&key=UGMBZ-CINWR-DDRW5-W52AK-D3ENK-ZEBRC&output=jsonp&pf=jsapi&ref=jsapi&cb=qq.maps._svcb2.geocoder0'
    url = template.format(addr=addr)
    resp = requests.get(url)
    x = re.findall('pointx":"(.*?)",',resp.text)[0]
    y = re.findall('pointy":"(.*?)",',resp.text)[0]
    return x,y

query(addr="山東省濰坊市安丘市興安街道")
('119.161423', '36.331699')

2. 測(cè)試數(shù)據(jù)

import pandas as pd

df = pd.read_csv("test.csv")
df

companyaddr0公司A山東省濰坊市安丘市興安街道1公司B浙江省杭州市蕭山區(qū)2公司C廣東省廣州市番禺區(qū)3公司D陜西省西安市蓮湖區(qū)

df['addr']
0    山東省濰坊市安丘市興安街道
1        浙江省杭州市蕭山區(qū)
2        廣東省廣州市番禺區(qū)
3        陜西省西安市蓮湖區(qū)
Name: addr, dtype: object

3. 批量查詢

對(duì)選中的addr列,使用apply方法調(diào)用query函數(shù)批量查詢經(jīng)緯度

df['經(jīng)緯度']=df['addr'].apply(query)
df
0    (119.161423, 36.331699)
1    (120.264570, 30.185340)
2    (113.384240, 22.937720)
3    (108.940200, 34.267030)
Name: addr, dtype: object

4. 保存

df['經(jīng)緯度']=df['addr'].apply(query)
df

companyaddr經(jīng)緯度0公司A山東省濰坊市安丘市興安街道(119.161423, 36.331699)1公司B浙江省杭州市蕭山區(qū)(120.264570, 30.185340)2公司C廣東省廣州市番禺區(qū)(113.384240, 22.937720)3公司D陜西省西安市蓮湖區(qū)(108.940200, 34.267030)

5. 導(dǎo)出csv

結(jié)果導(dǎo)出到csv中

df.to_csv('result.csv')

以上就是大數(shù)據(jù)中如何批量獲取指定地址的經(jīng)緯度信息,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI