首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python批量判断IP地址所属地区

Python批量判断IP地址所属地区

作者头像
Python小屋屋主
发布2018-04-17 10:38:37
1.8K0
发布2018-04-17 10:38:37
举报
文章被收录于专栏:Python小屋Python小屋

首先安装Python扩展库netaddr,然后对下面的代码进行简单修改后即可满足某些场合的应用。

from random import randrange from netaddr import IPRange

def ipRangeTest(ipAddr, ipRange): # 遍历IP地址与地区分布对应关系字典 # 如果ipAddr在某个地区的IP段内 # 返回该地区名称 for key, value in ipRange.items(): if ipAddr in value: return key return 'unknown'

# 可以根据实际情况替换这个字典的内容 # 或从IP地址库中读入信息 ipRange = {'area1':IPRange('10.2.1.0', '10.2.1.255'), 'area2':IPRange('10.2.2.0', '10.2.2.255'), 'area3':IPRange('10.3.0.0', '10.3.255.50'), 'area4':IPRange('11.1.0.0', '11.1.0.255')}

# 测试 for _ in range(10): a = randrange(9,12) b = randrange(1,4) c = randrange(4) d = randrange(256) ipAddr = '.'.join(map(str, (a,b,c,d))) print(ipAddr, ipRangeTest(ipAddr,ipRange))

部分运行结果:

9.2.3.40 unknown 10.1.3.67 unknown 11.1.1.54 unknown 9.1.2.243 unknown 9.3.2.182 unknown 10.3.0.30 area3 9.1.1.58 unknown 11.1.2.205 unknown 10.3.2.179 area3 11.3.1.240 unknown

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-03-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python小屋 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档