在 Python 中,有没有办法通过 ICMP ping 服务器,如果服务器响应则返回 TRUE,如果没有响应则返回 FALSE?
最佳答案
如果您不需要支持 Windows,这里有一个非常简洁的方法:
import os
hostname = "google.com" #example
response = os.system("ping -c 1 " + hostname)
#and then check the response...
if response == 0:
print hostname, 'is up!'
else:
print hostname, 'is down!'
这是有效的,因为如果连接失败,ping 返回一个非零值。 (返回值实际上因网络错误而异。)您还可以使用“-t”选项更改 ping 超时(以秒为单位)。请注意,这会将文本输出到控制台。
https://stackoverflow.com/questions/2953462/