0

有没有办法根据字符生成单词并检查该单词是否存在域(ping)?

我想做的是根据一些字符生成单词,例如“abcdefgh”,然后 ping generateword.com 以检查它是否存在。

4

3 回答 3

7

您不想使用 ping 命令,但可以使用 Python 的socket.gethostbyname()函数来确定主机是否存在。

def is_valid_host(hostname):
    try:
        addr = socket.gethostbyname(hostname)
    except socket.gaierror, ex:
        return False
    return True

hosts = ['abc', 'yahoo.com', 'google.com', 'nosuchagency.gov']
filter(is_valid_host, hosts)

这将花费大量时间,并且可能会让您的 ISP 生您的气。你最好:

  1. 使用较低级别的 DNS 接口,例如dnspython,或

  2. 找到与域名注册商的直接接口,例如whois并查询它。

你不会用它来向人们发送垃圾邮件,是吗?

于 2009-04-09T20:24:52.817 回答
3

仅仅因为站点无法 ping 并不意味着该域可用。域可能被保留但没有指向任何地方,或者机器可能不响应 ping,或者它可能只是停机。

于 2009-04-09T20:21:14.540 回答
0

您似乎在谈论字符组合的排列。这是一个相当好的出版食谱。该链接应该可以帮助您入门。

另外一点,ping 不会告诉您服务器是否“存在”或名称是否已注册,只有当它在线并且不在阻止 ping 流量的防火墙后面时。

于 2009-04-09T20:16:17.067 回答