Python利用pythonping處理ping的示例詳解
簡介
ping (Packet Internet Groper)是一種因特網(wǎng)包探索器,用于測試網(wǎng)絡連接量的程序 。Ping是工作在 TCP/IP網(wǎng)絡體系結(jié)構(gòu)中應用層的一個服務命令, 主要是向特定的目的主機發(fā)送 ICMP(Internet Control Message Protocol 因特網(wǎng)報文控制協(xié)議)Echo 請求報文,測試目的站是否可達及了解其有關狀態(tài)。ping用于確定本地主機是否能與另一臺主機成功交換(發(fā)送與接收)數(shù)據(jù)包,再根據(jù)返回的信息,就可以推斷TCP/IP參數(shù)是否設置正確,以及運行是否正常、網(wǎng)絡是否通暢等。
歷史攻略
Ping命令可以進行以下操作
1、通過將ICMP(Internet控制消息協(xié)議)回顯數(shù)據(jù)包發(fā)送到計算機并偵聽回顯回復數(shù)據(jù)包來驗證與一臺或多臺遠程計算機的連接。
2、每個發(fā)送的數(shù)據(jù)包最多等待一秒。
3、打印已傳輸和接收的數(shù)據(jù)包數(shù)。
需要注意的是,Ping成功并不一定就代表TCP/IP配置正確,有可能還要執(zhí)行大量的本地主機與遠程主機的數(shù)據(jù)包交換,才能確信TCP/IP配置的正確性。如果執(zhí)行ping成功而網(wǎng)絡仍無法使用,那么問題很可能出在網(wǎng)絡系統(tǒng)的軟件配置方面,ping成功只保證當前主機與目的主機間存在一條連通的物理路徑。
安裝
pip install pythonping
案例源碼1
os模塊的下ping的方式,易造成執(zhí)行堵塞,并且提取比較繁瑣。
# -*- coding: utf-8 -*- # time: 2022/7/31 11:26 # file: main.py # 公眾號: 玩轉(zhuǎn)測試開發(fā) import os cmd = "ping www.baidu.com" message = os.system(cmd) print("*" * 100) print(message)
案例源碼2
pythonping模塊處理ping,無堵塞現(xiàn)象,并且易于提取。
# -*- coding: utf-8 -*- # time: 2022/11/18 11:26 # file: ping-demo.py # 公眾號: 玩轉(zhuǎn)測試開發(fā) from pythonping import ping from colorama import Fore, Back, Style def check_online(ip: str): message = ping(ip) print(message) success_ping = "Reply" if success_ping in str(message): print(Fore.GREEN + Style.BRIGHT + f"localhost to - {ip} Success.") else: print(Fore.RED + Style.BRIGHT + f"localhost to - {ip} Fail.") if __name__ == '__main__': check_online("14.215.177.39") print(Style.RESET_ALL) check_online("111.112.113.114")
執(zhí)行2結(jié)果:
即:通過pythonping的結(jié)果有2個,通: 回復字節(jié) Reply bytes,不通:請求超時 Request timed out,來快速判斷ping的結(jié)果,從而快速得到結(jié)果。
到此這篇關于Python利用pythonping處理ping的示例詳解的文章就介紹到這了,更多相關Python pythonping處理ping內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
在jupyter notebook 添加 conda 環(huán)境的操作詳解
這篇文章主要介紹了在jupyter notebook 添加 conda 環(huán)境的操作詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-04-04pyqt 實現(xiàn)為長內(nèi)容添加滑輪 scrollArea
今天小編就為大家分享一篇pyqt 實現(xiàn)為長內(nèi)容添加滑輪 scrollArea,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-06-06將python flask項目打包成可以運行的軟件的全過程(包含報錯解決)
這篇文章主要給大家介紹了將python flask項目打包成可以用運行的軟件(包含報錯解決),文中通過代碼示例和圖文結(jié)合講解的非常詳細,具有一定的參考價值,需要的朋友可以參考下2024-02-02解讀opencv中cv2.imread()返回值為None問題及解決
這篇文章主要介紹了解讀opencv中cv2.imread()返回值為None問題及解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-11-11python+tkinter實現(xiàn)學生管理系統(tǒng)
這篇文章主要為大家詳細介紹了python+tkinter實現(xiàn)學生管理系統(tǒng),具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-08-08