【Python】基于geoip2 实现通过IP定位地理位置

1、下载库geoip2 ,代码为:

pip install geoip2 

2、下载离线地图库 GeoLite2-City.mmdb ,下载地址为:

官网地址

注册完成后,点击下载资料库进入下载界面:
在这里插入图片描述
选择你想用的数据库,进行下载。

3、代码部分:

import geoip2.database

ip = input()

reader = geoip2.database.Reader('./GeoLite2-City.mmdb')
data = reader.city(ip)

print("IP Address: ", ip)
print("国家: ", data.country.names['zh-CN'])  # names['zh-CN']转换为中文
print("省份: ", data.subdivisions.most_specific.names['zh-CN'])
print("城市: ", data.city.names['zh-CN'])
print("纬度: ", data.location.latitude)  # 位置
print("经度: ", data.location.longitude)
print("时区:",data.location.time_zone)

#问题:
我在测试武汉地区的IP时,发现定位显示的城市名字是洪山、江夏这种区的名字,不知道怎么才能改成显示武汉。求解答。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值