perl批量查询ip归属地的方法代码
发布时间:2023-08-11 22:53:54
标签:批量,查询,ip
由于业务需要,要查询客户的ip地址,将部分地区的客户过滤出来,开始想到使用ip数据库,发现读取纯真数据库的难度对我来说有些大,而我目前的时间要求比较紧迫,通过在群里询问,感谢黑影子和扶凯的帮忙,推荐了IP::QQWry::Decoded这个模块,该模块是专门用来读取qqwry纯真数据库的,用起来非常简单。
#!/usr/bin/perl
use IP::QQWry::Decoded;
use Encode;
use utf8;
binmode(STDIN, ':encoding(utf8)'); #这三行
binmode(STDOUT, ':encoding(utf8)'); #抄别人的
binmode(STDERR, ':encoding(utf8)'); #用来输出中文,和拿中文查找
my $qqwry=IP::QQWry::Decoded->new('qqwry.dat','gbk');
open UNUSE,'iplist.txt';
while (<UNUSE>){
($id,$ip,$key)=/(\d+)\s+(.*?)\s+(.*)/;
my $info=$qqwry->query("$ip"); #其实关键代码就这一行,哈哈
printf "%s\t%s\t%s\n",$id,$ip,$key if $info=~/地区名/;
}


猜你喜欢
- 一、简单使用入门小案例import logginglogging.basicConfig(level=logging.DEBUG, &nbs
- 附上代码与运行结果截图:import time# 获取当前时间now = time.localtime()# 格式化日期now_ = tim
- 方式一:叠加文字水印最简单的一种方式是,在图片上绘制半透明文本来实现水印效果。主要用到Figure.text函数参数类型说明x, yfloa
- 本文实例讲述了python读写二进制文件的方法。分享给大家供大家参考。具体如下:初学python,现在要读一个二进制文件,查找doc只发现
- 前言Jenkins, DevOps 技术栈的核心之一,CI/CD 离不开编写 Pipeline 脚本,上手 Jenkins ,简单查一下文档
- 除了在SSMS中查看view,存储过程等定义,也可以使用下面的语句直接查询:SELECT object_definition(object_
- 本文实例为大家分享了vue实现触底查询功能的具体代码,供大家参考,具体内容如下1.使用vant-list组件相关内容如下:2.对象绑定值的默
- 项目一开始的设计很重要,django中app的名称建议用小写我的博客由两个app组成,Blog和JiaBlog,总觉得不美观,想改成小写的o
- 1.什么是临时表内部临时表是sql语句执行过程中,用来存储中间结果的的数据表,其作用类似于:join语句执行过程中的joinbuffer,o
- 在Jupyter Notebook上使用Python+opencv实现如下图像缺陷检测。关于opencv库的安装可以参考:Python下op
- 程序需求:输入用户名,密码认证成功显示欢迎信息输入错误三次后锁定用户流程图:好像画的不咋地查看代码:#!/usr/bin/env pytho
- 我就废话不多说了,直接上代码吧!>>> import torch>>> from torch.autog
- 背景最近尝试了解Django中ORM实现的原理,发现其用到了metaclass(元类)这一技术,进一步又涉及到Python class中有两
- 想要实现自定义标签和过滤器需要进行准备工作:准备(必需)工作:1 在某个app下创建一个名为templatetags(必需,且包
- 本文实例讲述了Python enumerate函数功能与用法。分享给大家供大家参考,具体如下:eunmerate在英文中是列举、枚举的意思,
- 导语:哈喽,哈喽~今天小编又来分享小游戏了——flappy bird(飞扬的小鸟),这个游戏非常的经
- 先介绍一下redis的pub/sub功能:Pub/Sub功能(means Publish, Subscribe)即发布及订阅功能。基于事件的
- 一、命名空间和作用域当出现了函数,变量声明的位置就发生了变化,不同位置声明的变量,能访问这个变量的范围也出现了限制1.1 定义**命名空间:
- 执行以下代码,发现无法跳出for循环:func SelectTest() { i := 0 for { select { case <
- 前言本案例实现一个多线程排序算法,能够对给定的整数数组进行排序,使用 goroutines 对其进行并发化优化。随机数生成器func ran