【第三方库】【GeoIP2】Python中geoip2的使用

1.介绍

⭐️ 先放上官网地址,以示敬意:https://dev.maxmind.com/?lang=en

⭐️ MaxMind GeoIP2 产品为广泛的应用程序提供 IP 地理定位和代理检测

⭐️ GeoIP2提供收费版和免费版两种,收费版提供的服务范围免费版包含范围

⭐️ 本文主要介绍免费版GeoLite2的使用方式

2.安装

⭐️ 注册: 由于免费版的需要注册方能下载相应的数据库,我们从以下链接注册账号:注册链接
在这里插入图片描述
⭐️ 下载对应想要使用的数据库,我们这里下载的是mmdb格式的数据库,是国家数据库
在这里插入图片描述

3.使用geoip2

⭐️ 这里是官方教学文档:API使用demo
在这里插入图片描述
⭐️ 安装安装包geoip2

pip install geoip2

⭐️ 读取解压后的数据库并查询相关IP

import geoip2.database

with geoip2.database.Reader("../../data/geoIP/GeoLite2-Country_20220104/GeoLite2-Country.mmdb") as reader:
    response = reader.country("114.114.114.114")
    print(response.country.iso_code)
# 打印结果
CN

4.总结

⭐️ geoip还提供了其他各种各样的信息,具体可去官网参考开发文档,如下显示部分查询IP获得的信息

geoip2.models.Country({'continent': {'code': 'AS', 'geoname_id': 6255147, 'names': {'de': 
'Asien', 'en': 'Asia', 'es': 'Asia', 'fr': 'Asie', 'ja': 'アジア', 'pt-BR': 'Ásia', 'ru': 'Азия',
 'zh-CN': '亚洲'}}, 'country': {'geoname_id': 1814991, 'iso_code': 'CN', 'names': {'de': 'China',
  'en': 'China', 'es': 'China', 'fr': 'Chine', 'ja': '中国', 'pt-BR': 'China', 'ru': 'Китай', 
  'zh-CN': '中国'}}, 'registered_country': {'geoname_id': 1814991, 'iso_code': 'CN', 'names': 
  {'de': 'China', 'en': 'China', 'es': 'China', 'fr': 'Chine', 'ja': '中国', 'pt-BR': 'China', 
  'ru': 'Китай', 'zh-CN': '中国'}}, 'traits': {'ip_address': '114.114.114.114', 'prefix_len': 
  15}}, ['en'])

⭐️ 注意: 这个免费的数据库是每两周更新一次,如果长期使用的话注意维护数据库

5.参考资料

📗 1. 官方链接

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值