我想进行批量域名查询,以查看某些域名是否可以购买。我找不到一个适用的Perl模块,但似乎应该有一种在Perl中实现此功能的方法。我正在寻找免费的解决方案。谢谢!
我想进行批量域名查询,以查看某些域名是否可以购买。我找不到一个适用的Perl模块,但似乎应该有一种在Perl中实现此功能的方法。我正在寻找免费的解决方案。谢谢!
从这里开始:http://www.webhostingtalk.com/showthread.php?t=625723
这是一个快速的 Perl 脚本,需要 Net::DNS(相当常见的模块)。
#!/usr/bin/perl
# Domains Available
# Josh Skidmore <josh@vorcado.com>
# 05 August 2007 | 11:40p EST
# Requirements
use Net::DNS;
# Variables
%VAR = (
db => './domains.txt',
);
# Open file
open (DB,$VAR{'db'});
my (@domains) = <DB>;
close (DB);
# Test domains
foreach my $domain (@domains)
{
chomp($domain);
my ($available) = &check_domain(domain => $domain);
if ($available)
{
print "$domain is available.<br />\n";
}
else
{
print "$domain is NOT available<br />\n";
}
}
sub check_domain {
# Test domain for existance
# Josh Skidmore <josh@vorcado.com>
# 05 August 2007 | 11:42p EST
# Variables
my (%DATA) = @_ ;
my ($available) = 0;
# Start Net::DNS
my $res = Net::DNS::Resolver->new;
$res->udp_timeout(2);
$res->tcp_timeout(2);
my ($domain) = $res->search($DATA{'domain'});
if ($domain)
{
($available) = 1;
}
# Output
return ($available);
}
CPAN上有很多类似于whois的模块。例如,Net::Whois::Parser
看起来很有前途。
如果没有这些模块,Linux和其他类Unix系统(包括Windows的Cygwin)都可以使用whois
命令。此外,CPAN上还有一个Perl脚本whois
。运行这些程序很容易。麻烦的部分是解析这些程序的输出,而Perl绝对可以帮助你完成这个任务。