gpt4 book ai didi

python - Python 中的快速主机名/IP 检查?

转载 作者:行者123 更新时间:2023-11-28 17:31:11 25 4
gpt4 key购买 nike

我有一个主机名列表,我想以大约一秒的时间间隔检查这些机器是否正在运行。

到目前为止我所拥有的是这个,但是离线机器上的超时需要几秒钟:

socket.setdefaulttimeout(0)
def resolve_hostname(hostname):
try:
return socket.gethostbyname(hostname)
except socket.error:
return False

不好,因为列表中有大约 30 台机器。

有什么办法可以加快速度吗?

谢谢!

最佳答案

我不想自己编写代码,而是考虑使用第三方大规模 DNS 解析器。这是一个看起来很有希望的:

https://pypi.python.org/pypi/berserker_resolver/1.0.3

安装:

pip install berserker_resolver

这是一个例子:

>>> import berserker_resolver
>>> resolver = berserker_resolver.Resolver()
>>> to_resolve = ['www.google.com', 'www.microsoft.com', 'www.facebook.com', 'invalid.invalid']
>>> resolver.resolve(to_resolve).keys()
['www.microsoft.com', 'www.facebook.com', 'www.google.com']

关于python - Python 中的快速主机名/IP 检查?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34221487/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com