❶ python3 判斷IP地址是否ping通
os.system(『comand』) 會執行括弧中的命令,如果命令成功執行,這條語句返回0,否則返回1。
要想得到標准輸出,可以使用os.popen(cmd)
import os
p=os.popen("ping 192.168.2.129")
x=p.read()
p.close()
if x.count('temeout'):
print("ping不通")
else:
print("ping通了")
❷ python 怎樣去編寫一個ping wwww.baidu.com -n 8就是ping之後能帶參數的
其實在pip是有一個叫做的ping的項目的,何必折騰自己呢?安裝好了後,可以這樣簡單使用即可,
importping
ping.verbose_ping(dest_addr,timeout=2,count=4,psize=64)
另外如果要實現更復雜的東西,還有很多更底層的函數方便你使用。
❸ python 執行ping 返回成功與否
代碼如下:
import subprocess
import re
p = subprocess.Popen(["ping.exe", 'google.com'],
stdin = subprocess.PIPE,
stdout = subprocess.PIPE,
stderr = subprocess.PIPE,
shell = True)
out = p.stdout.read()
regex = re.compile("Minimum = (\d+)ms, Maximum = (\d+)ms, Average = (\d+)ms", re.IGNORECASE)
print regex.findall(out)
❹ python新人一枚,求教如何隨機只ping兩次而不循環完整個列表.謝謝
#coding='utf-8'
importos,sys
#引用這個
fromrandomimportsample
truelist=[]
falselist=[]
IP=['192.168.1.1','192.168.0.1','192.168.1.2']
#隨機取2個數組
foriinsample(IP,2):
ping=os.system('ping-c3%s'%i)
ifping:
falselist.append(i)
else:
truelist.append(i)
print('truelist:'+str(truelist))
print('falselist:'+str(falselist))
❺ python 判斷是否ping通
通過mac查ip
方法一:用ARP -A 查詢
這種方法只能查到與本機通訊過(20分鍾內)的主機MAC地址和IP地址。可在遠程主機所屬網段中的任一台主機上運行此命令,這樣可查出IP欺騙類病毒的主機。
方法二:用專用軟體查,如nbtscan
命令方式是:nbtscan -r 網路號/掩碼位,這種方法可查詢某網段的所有IP與MAC對應關系,但裝有防火牆的主機則禁止查詢。
方法三: 如果所連交換機有網管功能,可用ARP SHOW 命令顯示交換機的arp緩存信息,這種方式基本可查詢所有的IP 與MAC地址,但只有網管才有這個許可權。
方法四:用sniffer類的嗅探軟體抓包分析,packet中一般都含用IP地址與MAC地址。
方法五:用solarwinds類軟體中的MAC ADDRESS DISCOVERY查詢,但這個工具好象不能跨網段查詢。
❻ python 判斷ip是否能ping通
python編程下,檢查IP是否能ping通,並且分別導入兩個文件,代碼如下:
#!/usr/bin/python
#-*- coding:gb18030 -*-
'''
Created on 2015-7-7
#判斷文件中的ip是否能ping通,並且將通與不通的ip分別寫到兩個文件中
#文件中的ip一行一個
'''
import time,os
start_Time=int(time.time()) #記錄開始時間
def ping_Test():
ips=open('host.txt','r')
ip_True = open('ip_True.txt','w')
ip_False = open('ip_False.txt','w')
count_True,count_False=0,0
for ip in ips.readlines():
ip = ip.replace('\n','') #替換掉換行符
return1=os.system('ping -n 2 -w 1 %s'%ip) #每個ip ping2次,等待時間為1s
if return1:
print 'ping %s is fail'%ip
ip_False.write(ip) #把ping不通的寫到ip_False.txt中
count_False += 1
else:
print 'ping %s is ok'%ip
ip_True.write(ip) #把ping通的ip寫到ip_True.txt中
count_True += 1
ip_True.close()
ip_False.close()
ips.close()
end_Time = int(time.time()) #記錄結束時間
print "time(秒):",end_Time - start_Time,"s" #列印並計算用的時間
print "ping通數:",count_True," ping不通的ip數:",count_False
ping_Test()