使用whois从perl中的ip地址获取国家/地区

时间:2015-03-30 19:15:44

标签: perl ip country whois

如何从perl的ip地址获取国家/地区?我必须使用whois来做到这一点。 我知道,我可以使用国家:

$test = `whois $ip |grep -i country`;

但它归还给我"Country: DE"。我只需要“DE”。

2 个答案:

答案 0 :(得分:0)

我是以小菜鸟的方式制作的,但它的作用是xd

$test = `whois $_ |grep -i country`;
$rid = rindex($test, ":");
$b = substr("$test, $rid+1);

现在我只有" DE"," BR"," CN"," MX"等:)

答案 1 :(得分:0)

my $country = `whois $ip | grep -Po '^Country:\s*\K.*';
chomp($country);

但是看到-P中的“P”代表“Perl”,我们不妨摆脱grep

my $whois = `whois $ip`;
my ($country) = $whois =~ /^Country:\s*(.*)/m;