教你查別人ip地址精確位置:通過ip查地址的網站

在大數據時代,了解收集用戶來源是必不可少的功能之一,本地搭建IP庫進行IP分析是ELK日誌分析功能的一部分,本文進行了工具拆解,將一步步教你搭建日誌分析平台。

python3通過geoip2本地獲取IP地址信息

安裝 geoip2 庫

pip install geoip2 -i https://pypi.douban.com/simple

下載 Maxmind 網站的 IP 信息庫

地址:
http://dev.maxmind.com/geoip/geoip2/geolite2

下載完之後,解壓,將解壓包中的 mmdb 文件複製到項目的應用程序中

本機使用的環境是python3.7.4

直接上代碼

#!/usr/bin/python
# -*-coding:utf-8-*-
import geoip2.database
reader = geoip2.database.Reader('./GeoLite2-City.mmdb')
# ip = input("輸入你要查詢的IP:n")
response = reader.city('123.58.180.8') #網易ping www.163.com
# response = reader.city(ip)
# 有多種語言,我們這裡主要輸出英文和中文
print(response.city.name)
print("你查詢的IP的地理位置是:")
print("地區:{}({})".format(response.continent.names["es"],
 response.continent.names["zh-CN"]))
print("國家:{}({}) ,簡稱:{}".format(response.country.name,
 response.country.names["zh-CN"],
 response.country.iso_code))
print("洲/省:{}({})".format(response.subdivisions.most_specific.name,
 response.subdivisions.most_specific.names["zh-CN"]))
print("城市:{}({})".format(response.city.name,
 response.city.names["zh-CN"]))
print("經度:{},緯度{}".format(response.location.longitude,
 response.location.latitude))
print("時區:{}".format(response.location.time_zone))
print("郵編:{}".format(response.postal.code))

列印出結果

你查詢的IP的地理位置是:
地區:Asia(亞洲)
國家:China(中國) ,簡稱:CN
洲/省:Zhejiang(浙江省)
城市:Hangzhou(杭州)
經度:120.1619,緯度30.294
時區:Asia/Shanghai
郵編:None

2.至於在線庫的使用是需要一個license_key

只有前面兩步不太一樣

連接: client = geoip2.webservice.Client(42, <license_key>)

查詢 IP: response = client.insights(<IP>)

原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/216297.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
投稿專員的頭像投稿專員
上一篇 2024-12-08 21:55
下一篇 2024-12-08 21:55

相關推薦

發表回復

登錄後才能評論