通過IP位址進行精準定位

2022-07-15 18:27:10 字數 2765 閱讀 1694

可能會遇到這樣的問題,伺服器或者系統經常被掃瞄,通過ip位址我們只能查到某乙個市級城市,如下圖:

當我們想具體到街道甚至門牌號,該怎麼辦???

若想要使用該介面進行查詢,必須先申請乙個金鑰(ak),如下圖:

申請過程就不進行說明了。api的介面引數說明和返回引數說明也不過多的介紹,大家可以看一看。因為我想返回基礎定位結果+位址資訊+poi資訊,所以我將請求引數extensions的值設定為3。一次完整的http請求為:api.map.baidu.com/highacciploc/v1?qcip=183.55.116.90&qterm=pc&ak=「你的 金鑰(ak)」&coord=bd09ll&extensions=3 。請求結果如下圖:

結果為json格式資料:

我們需要的字段為:content欄位裡面的formatted_address。當然我們也可以將location裡面的經度和緯度提取出來從而顯示在地圖上面。有的ip位址會返回pois資料,比如:183.55.116.95。返回引數如下:

此時我們可以把pois欄位也提取出來,值得注意的是pois為陣列,我們可以遍歷陣列資料。

通過上面的分析,用python簡單的寫了乙個指令碼,具體**如下:

1

#-*- coding:utf-8 -*-23

#author:allen權45

import

sys6

7import

urllib289

import

json

1011

defget_ip_information(ip):

1213 url='

'+ip+'

&qterm=pc&ak=

'你的金鑰(ak)'

&coord=bd09ll&extensions=3'14

15 poiss=''

1617 request =urllib2.request(url)

1819 page = urllib2.urlopen(request, timeout=10)

2021 data_json =page.read()

2223 data_dic =json.loads(data_json)

2425

if(data_dic.has_key(\\\\"

content\\\\

")):

2627 content=data_dic[\\\\"

content\\\\"]

2829 address_component=content[\\\\"

address_component\\\\"]

3031 formatted_address=content[\\\\"

formatted_address\\\\"]

3233

print \\\\""34

35print address_component[\\\\"

country\\\\"]

3637

print

formatted_address

3839

if (content.has_key(\\\\"

pois\\\\

")):

4041

print \\\\"

該ip位址附近poi資訊如下:\\\\"42

43 pois = content[\\\\"

pois\\\\"]

4445

for index in

range(len(pois)):

4647 pois_name = pois[index][\\\\"

name\\\\"]

4849 pois_address = pois[index][\\\\"

address\\\\"]

5051

print

pois_name, pois_address

5253

else:54

55print

'ip位址定位失敗!!!'56

再放一張自己ip的測試截圖:

確實精確到了路名,很準確,雖然沒有pois的資訊。

最後宣告一下,成功率:綜合定位成功率 65% ,精度:90% 誤差 80m 以內;95% 誤差 350m。這是官方給出的資料,所說有一定的概率是查詢失敗的!!!!

如何通過IP位址進行精準定位

在甲方工作的朋友可能會遇到這樣的問題,伺服器或者系統經常被掃瞄,通過ip位址我們只能查到某乙個市級城市,如下圖 當我們想具體到街道甚至門牌號,該怎麼辦?若想要使用該介面進行查詢,必須先申請乙個金鑰 ak 如下圖 申請過程就不進行說明了。api的介面引數說明和返回引數說明也不過多的介紹,大家可以看一看...

ip位址高精準定位

ip資料庫包含全球43億全量ipv4與 2 128全量ipv6,資料庫版本分為高精準 公安版 高精準 商業版 區縣級 城市級和ipv6共5個版本。ip資料庫主要解決的痛點為網際網路廣告精準投放 內容精準推薦 使用者位置畫像 重點企業辦公網路資產普查,網路攻擊溯源 取證 嫌疑人地理位置定位 伺服器優化...

ffmpeg時間戳精準定位

重新編碼片源,設定片源gop間隔為10秒,幀率30fps,同時為每幀影象新增時間戳水印,素材時長為5分鐘 轉碼命令 ffmpeg t 5 00 i input.mp4 vf drawtext fontsize 120 text c v libx264 r 30 g 300 s 1280x720 pr...