博客專欄

EEPW首頁 > 博客 > Python視頻教程之Python判斷網(wǎng)絡(luò)連通的實現(xiàn)方法

Python視頻教程之Python判斷網(wǎng)絡(luò)連通的實現(xiàn)方法

發(fā)布人:扣丁學(xué)堂2 時間:2021-04-22 來源:工程師 發(fā)布文章

今天扣丁學(xué)堂Python培訓(xùn)小編主要是給大家分享一下Python判斷網(wǎng)絡(luò)連通的實現(xiàn)方法,喜歡Python開發(fā)的小伙伴們可以隨著小編一起來了解一下。

扣丁學(xué)堂Python培訓(xùn)之Python判斷網(wǎng)絡(luò)連通的實現(xiàn)方法

開發(fā)中偶爾需要判斷網(wǎng)絡(luò)的連通性,沒有什么方法比ping 更直接了當。開發(fā)中偶爾需要判斷網(wǎng)絡(luò)的連通性,沒有什么方法比 ping 更直接了當,通常檢查網(wǎng)絡(luò)情況都是運行命令ping www.baidu.com ,查看輸出信息即可。


C:\Users>ping www.baidu.com
正在 Ping www.baidu.com [61.135.169.125] 具有 32 字節(jié)的數(shù)據(jù):
來自 61.135.169.125 的回復(fù): 字節(jié)=32 時間=4ms TTL=57
來自 61.135.169.125 的回復(fù): 字節(jié)=32 時間=7ms TTL=57
來自 61.135.169.125 的回復(fù): 字節(jié)=32 時間=9ms TTL=57
來自 61.135.169.125 的回復(fù): 字節(jié)=32 時間=9ms TTL=57
61.135.169.125 的 Ping 統(tǒng)計信息:
 數(shù)據(jù)包: 已發(fā)送 = 4,已接收 = 4,丟失 = 0 (0% 丟失),
往返行程的估計時間(以毫秒為單位):
 最短 = 4ms,最長 = 9ms,平均 = 7ms


簡單方法:

python執(zhí)行批處理用多種方法,考慮到我們僅僅用于驗證網(wǎng)絡(luò)連通性,只需要最終的結(jié)果,os.system()方法最合適,執(zhí)行cmd命令,并返回進程執(zhí)行退出錯誤碼。


import os
exit_code = os.system('ping www.baidu.com')
if exit_code:
 raise Exception('connect failed.')


網(wǎng)絡(luò)連通 exit_code == 0,否則返回非0值。

高級方法:

獲取訪問域名的IP地址。正則表達式提取 [61.135.169.125] 數(shù)據(jù)。

獲取網(wǎng)絡(luò)實際連通的情況。正則表達式提取 TTL 和 時間 判斷當前的網(wǎng)絡(luò)狀況。

使用 subprocess 管道調(diào)用的方式獲取控制臺輸出信息,然后在使用正則表達式提取關(guān)鍵數(shù)據(jù)。

小結(jié):

相比其他方法判斷網(wǎng)絡(luò)連通性,命令行執(zhí)行 ping 的方案實現(xiàn)簡單、快捷、有效。


以上就是扣丁學(xué)堂Python在線學(xué)習小編給大家分享的Python判斷網(wǎng)絡(luò)連通的實現(xiàn)方法,希望對小伙伴有所幫助,想要了解更多內(nèi)容的小伙伴可以登錄扣丁學(xué)堂官網(wǎng)咨詢??鄱W(xué)堂是專業(yè)的Python培訓(xùn)機構(gòu),不僅有專業(yè)的老師和與時俱進的課程體系,還有大量的Python在線視頻供學(xué)員觀看學(xué)習,想要學(xué)好Python的小伙伴快快行動吧??鄱W(xué)堂python學(xué)習交流群:816572891。微信號:codingbb

*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。



關(guān)鍵詞: Python視頻

技術(shù)專區(qū)

關(guān)閉