#!/usr/bin/python # -*- coding: UTF-8 -*- import os import time import commands import sys class Pinger(): STYLE = { 'fore': { 'black': 30, 'red': 31, 'green': 32, 'yellow': 33, 'blue': 34, 'purple': 35, 'cyan': 36, 'white': 37, }, 'back': { 'black': 40, 'red': 41, 'green': 42, 'yellow': 43, 'blue': 44, 'purple': 45, 'cyan': 46, 'white': 47, }, 'mode': { 'bold': 1, 'underline': 4, 'blink': 5, 'invert': 7, }, 'default': { 'end': 0, } } def __init__(self, host): self.start_time = time.localtime(time.time()) self.start_time_m = time.time() self.data = dict() self.host = host self.midnight_zero = list() self.midnight_non_zero = list() self.morning_zero = list() self.morning_non_zero = list() self.afternoon_zero = list() self.afternoon_non_zero = list() self.night_zero = list() self.night_non_zero = list() def ping(self): cmd = "ping "+ self.host + " -c1 -W 1" result = commands.getoutput(cmd) result = result.split() result = result[-2].split("/")[0] if result.isalpha(): result =0 return float(result) def use_style(self,string, mode='', fore='', back=''): mode = '%s' % self.STYLE['mode'][mode] if self.STYLE['mode'].has_key(mode) else '' fore = '%s' % self.STYLE['fore'][fore] if self.STYLE['fore'].has_key(fore) else '' back = '%s' % self.STYLE['back'][back] if self.STYLE['back'].has_key(back) else '' style = ';'.join([s for s in [mode, fore, back] if s]) style = '\033[%sm' % style if style else '' end = '\033[%sm' % self.STYLE['default']['end'] if style else '' return '%s%s%s' % (style, string, end) def red(self,str): return self.use_style(str,fore="red") def blue(self,str): return self.use_style(str,fore="blue") def cyan(self,str): return self.use_style(str,fore="cyan") def yellow(self,str): return self.use_style(str,fore="yellow") def green(self,str): return self.use_style(str,fore="green") def purple(self,str): return self.use_style(str,fore="purple") def colored(self,latency): if latency == 0: return self.red(str(round(latency,2)) + " ms") elif(0=1 else 0,(int(spend_time % 3600 /60))if spend_time % 3600 /60 >= 1 else 0,int(spend_time % 3600 %60),"")) print("-" * 53) if __name__ == "__main__" : os.system("clear") print("服务器延迟监测脚本") print("Made By 主机博客(zhujiboke.com)") print("") mytime = time.localtime(time.time()) print("当前服务器时间为: " + str(mytime[0]) + "年" + str(mytime[1]) + "月" + str(mytime[2]) +"日 " + str(mytime[3]) + ":" + str(mytime[4]) + ":" + str(mytime[5]) ) myinput = raw_input("是否正确 (y/n): ") if myinput == "y": pinghost = raw_input("请输入要Ping的服务器IP/域名:") p = Pinger(pinghost) p.start() else: print("\n请将服务器时间调整正确后运行本程序!")