如何检查域名是否可用(批量)?

时间:2011-01-29 12:44:51

标签: perl dns

我希望进行批量域名查询,以查看是否有可供购买的域名。我找不到一个perl模块,但似乎应该有一种方法在perl中执行此操作。我正在寻找免费的东西。 THX!

3 个答案:

答案 0 :(得分:1)

从这里开始: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);
}

答案 1 :(得分:1)

答案 2 :(得分:1)

有很多whois-like modules on CPANNet::Whois::Parser看起来很有希望。

除此之外,whois命令在Linux和其他Unix-y系统(包括用于Windows的Cygwin)中可用。还有一个whois script in Perl on CPAN。运行这些程序很容易。 Perl可以帮助的棘手部分是解析这些程序的输出。