Python中檢測網(wǎng)絡(luò)通斷

admin Python評論373字?jǐn)?shù) 605閱讀模式

要在Python中檢測網(wǎng)絡(luò)通斷,可以使用socket庫來實(shí)現(xiàn)。以下是一個簡單的代碼示例:

import socket

def check_network_connection():
    try:
        # 創(chuàng)建socket對象
        s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        # 設(shè)置超時時間
        s.settimeout(5)
        # 嘗試連接一個公共的IP地址(如Google的DNS服務(wù)器)
        s.connect(("8.8.8.8", 53))
        # 連接成功,網(wǎng)絡(luò)通暢
        return True
    except socket.error as e:
        # 連接失敗,網(wǎng)絡(luò)斷開
        return False
    finally:
        # 關(guān)閉socket連接
        s.close()

# 調(diào)用函數(shù)檢測網(wǎng)絡(luò)連接狀態(tài)
if check_network_connection():
    print("網(wǎng)絡(luò)通暢")
else:
    print("網(wǎng)絡(luò)斷開")

在上述代碼中,我們創(chuàng)建了一個socket對象,并嘗試連接一個公共的IP地址(8.8.8.8),它是Google的DNS服務(wù)器之一。若連接成功,則表示網(wǎng)絡(luò)通暢;若連接失敗,則表示網(wǎng)絡(luò)斷開。

需要注意的是,我們通過設(shè)置超時時間為5秒來避免等待時間過長。你也可以根據(jù)自己的需求對超時時間進(jìn)行調(diào)整。另外,這只是一個簡單的網(wǎng)絡(luò)通斷檢測方法,僅僅驗(yàn)證了是否能夠成功地連接到指定的IP地址。在實(shí)際應(yīng)用中,還可以根據(jù)需求檢測更多的網(wǎng)絡(luò)狀態(tài)信息。

版權(quán)聲明:文章圖片資源來源于網(wǎng)絡(luò),如有侵權(quán),請留言刪除!!!
廣告也精彩
admin
  • 本文由 發(fā)表于 2023年12月20日 20:14:33
  • 轉(zhuǎn)載請務(wù)必保留本文鏈接:http://yudch.cn/11277.html
匿名

發(fā)表評論

匿名網(wǎng)友 填寫信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: