我试图从Windows上的ping测试打印结果。但是,网站超时时出现以下错误:在Python中返回ping测试结果
IndexError:列表索引超出范围。
很明显,它正在寻找结果,但是如何在超时时表明“网站不可用”?
try:
ping = subprocess.Popen(["ping", "-n", "5", website], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
out, error = ping.communicate()
minimum = int(re.findall(r"Minimum = (\d+)", out)[0])
maximum = int(re.findall(r"Maximum = (\d+)", out)[0])
average = int(re.findall(r"Average = (\d+)", out)[0])
packet = int(re.findall(r"Lost = (\d+)", out)[0])
if packet > 1:
packet = 5/packet * 100
except subprocess.CalledProcessError:
print "Couldn't get a ping"
你检查是否错误? –