要在Python中检测网络通断,可以使用socket库来实现。以下是一个简单的代码示例:
import socket def check_network_connection(): try: # 创建socket对象 s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 设置超时时间 s.settimeout(5) # 尝试连接一个公共的IP地址(如Google的DNS服务器) s.connect(("8.8.8.8", 53)) # 连接成功,网络通畅 return True except socket.error as e: # 连接失败,网络断开 return False finally: # 关闭socket连接 s.close() # 调用函数检测网络连接状态 if check_network_connection(): print("网络通畅") else: print("网络断开")
在上述代码中,我们创建了一个socket对象,并尝试连接一个公共的IP地址(8.8.8.8),它是Google的DNS服务器之一。若连接成功,则表示网络通畅;若连接失败,则表示网络断开。
需要注意的是,我们通过设置超时时间为5秒来避免等待时间过长。你也可以根据自己的需求对超时时间进行调整。另外,这只是一个简单的网络通断检测方法,仅仅验证了是否能够成功地连接到指定的IP地址。在实际应用中,还可以根据需求检测更多的网络状态信息。
版权声明:文章图片资源来源于网络,如有侵权,请留言删除!!!
评论