在Python中,你可以使用ping3
库来实现ping命令的超时处理
pip install ping3
然后,你可以使用以下代码实现ping命令的超时处理:
from ping3 import ping, exceptions import time def ping_host(host, timeout=1): try: response_time = ping(host, timeout) if response_time is not None: print(f"{host} 在 {response_time} 毫秒内响应") else: print(f"{host} 无响应") except exceptions.Timeout as e: print(f"{host} 请求超时: {e}") if __name__ == "__main__": host = "example.com" # 你可以替换成你想要ping的主机地址 while True: ping_host(host, timeout=1) time.sleep(5) # 每5秒ping一次
在这个示例中,我们定义了一个名为ping_host
的函数,它接受一个主机名和一个超时值(默认为1秒)。我们使用ping3
库的ping
函数来发送ping请求,并设置超时。如果请求成功,我们打印响应时间;如果请求超时,我们捕获exceptions.Timeout
异常并打印错误信息。
在__main__
部分,我们使用一个无限循环来定期ping主机,并在每次请求之间等待5秒。你可以根据需要修改这个示例,以适应你的具体需求。