由于業(yè)務(wù)需要,要查詢客戶的ip地址,將部分地區(qū)的客戶過濾出來,開始想到使用ip數(shù)據(jù)庫,發(fā)現(xiàn)讀取純真數(shù)據(jù)庫的難度對我來說有些大,而我目前的時間要求比較緊迫,通過在群里詢問,感謝黑影子和扶凱的幫忙,推薦了IP::QQWry::Decoded這個模塊,該模塊是專門用來讀取qqwry純真數(shù)據(jù)庫的,用起來非常簡單。
代碼如下:
#!/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"); #其實關(guān)鍵代碼就這一行,哈哈
printf "%s/t%s/t%s/n",$id,$ip,$key if $info=~/地區(qū)名/;
}
|
新聞熱點
疑難解答
圖片精選