要在Python中檢測(cè)網(wǎng)絡(luò)通斷,可以使用socket庫(kù)來(lái)實(shí)現(xiàn)。以下是一個(gè)簡(jiǎn)單的代碼示例:
import socket def check_network_connection(): try: # 創(chuàng)建socket對(duì)象 s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 設(shè)置超時(shí)時(shí)間 s.settimeout(5) # 嘗試連接一個(gè)公共的IP地址(如Google的DNS服務(wù)器) s.connect(("8.8.8.8", 53)) # 連接成功,網(wǎng)絡(luò)通暢 return True except socket.error as e: # 連接失敗,網(wǎng)絡(luò)斷開(kāi) return False finally: # 關(guān)閉socket連接 s.close() # 調(diào)用函數(shù)檢測(cè)網(wǎng)絡(luò)連接狀態(tài) if check_network_connection(): print("網(wǎng)絡(luò)通暢") else: print("網(wǎng)絡(luò)斷開(kāi)")
在上述代碼中,我們創(chuàng)建了一個(gè)socket對(duì)象,并嘗試連接一個(gè)公共的IP地址(8.8.8.8),它是Google的DNS服務(wù)器之一。若連接成功,則表示網(wǎng)絡(luò)通暢;若連接失敗,則表示網(wǎng)絡(luò)斷開(kāi)。文章源自網(wǎng)吧系統(tǒng)維護(hù)-http://www.ykday.cn/11277.html
需要注意的是,我們通過(guò)設(shè)置超時(shí)時(shí)間為5秒來(lái)避免等待時(shí)間過(guò)長(zhǎng)。你也可以根據(jù)自己的需求對(duì)超時(shí)時(shí)間進(jìn)行調(diào)整。另外,這只是一個(gè)簡(jiǎn)單的網(wǎng)絡(luò)通斷檢測(cè)方法,僅僅驗(yàn)證了是否能夠成功地連接到指定的IP地址。在實(shí)際應(yīng)用中,還可以根據(jù)需求檢測(cè)更多的網(wǎng)絡(luò)狀態(tài)信息。文章源自網(wǎng)吧系統(tǒng)維護(hù)-http://www.ykday.cn/11277.html 文章源自網(wǎng)吧系統(tǒng)維護(hù)-http://www.ykday.cn/11277.html
評(píng)論