华域联盟 perl perl批量查询ip归属地的方法代码

perl批量查询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=~/地区名/;

}

您可能感兴趣的文章:

本文由 华域联盟 原创撰写:华域联盟 » perl批量查询ip归属地的方法代码

转载请保留出处和原文链接:https://www.cnhackhy.com/77130.htm

本文来自网络,不代表华域联盟立场,转载请注明出处。

作者: sterben

发表回复

联系我们

联系我们

2551209778

在线咨询: QQ交谈

邮箱: [email protected]

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部