提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言:
前段时间有个需求是把几万个IP解析为国家,省份,城市,运营商等形式,本来想写个爬虫不断去向网站post,但想了想,这样慢不说,还容易被封。百般求索之下,我发现了一个神器!!
一、Ip2region是什么?
ip2region - 准确率99.9%的离线IP地址定位库,0.0x毫秒级查询,ip2region.db数据库只有数MB,提供了java,php,c,python,nodejs,golang,c#等查询绑定和Binary,B树,内存三种查询算法。
二、使用步骤
1.懒得说,哈哈哈真的!!没啥好说的,特别简单
2.我把它封装了一下
dbPath = resource_path(os.path.join("res", "ip2region.xdb"))# 预先加载整个 xdb
vi = loadVectorIndexFromFile(dbfile=dbPath)
searcher = XdbSearcher(dbfile=dbPath, vectorIndex=vi)# 2. 使用上面的缓存创建查询对象, 同时也要加载 xdb 文件
pattern = re.compile(r'(^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$)')#IP合法性校验
3.给大家看看效果:
我对其作了ip合法性校验,以及int转ip等操作
支持xls文件操作,无脑用就行,速度贼快嘿嘿
这是我用SQL导出的十条ip
我们只需要小小的点一下开始,桌面上几乎瞬间就出现了结果哈哈
结果:可以看到大部分还是比较全的,国外的IP支持度也还行吧,我把ip字段加了进去,方便直接导入到sql中
总结
虽然很简单,但是我这个菜鸟还是花了一下午,有需要的朋友可以找我,不多,也就一瓶饮料的钱哈哈哈,就当赏钱了。当然,有兴趣的朋友可以直接动手做一做,这个确实不难哈哈,不浪费大家时间了,新开了这个号,想搞啥搞啥嘿嘿。