对python这个高级语言感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编两巴掌来看看吧!
python获取网络时间
# @param python获取网络时间和本地时间
# @author 编程之家 jb51.cc|512Pic.com
获取网络时间
def getBeijinTime():
获取北京时间
try:
conn = httplib.httpconnection(www.beijing-time.org)
conn.request(GET,/time.asp)
response = conn.getresponse()
print response.status,response.reason
if response.status == 200:
#解析响应的消息
result = response.read()
logging.debug(result)
data = result.split(\r\n)
year = data[1][len(nyear)+1 : len(data[1])-1]
month = data[2][len(nmonth)+1 : len(data[2])-1]
day = data[3][len(nday)+1 : len(data[3])-1]
#wday = data[4][len(nwday)+1 : len(data[4])-1]
hrs = data[5][len(nhrs)+1 : len(data[5])-1]
minute = data[6][len(nmin)+1 : len(data[6])-1]
sec = data[7][len(nsec)+1 : len(data[7])-1]
beijinTimeStr = %s/%s/%s %s:%s:%s % (year,month,day,hrs,minute,sec)
beijinTime = time.strptime(beijinTimeStr,%Y/%m/%d %X)
return beijinTime
except:
logging.exception(getBeijinTime except)
return None
# End www.jb51.cc
python获取本地时间
# @param python获取网络时间和本地时间
# @author 编程之家 jb51.cc|512Pic.com
同步本地系统时间
def syncLocalTime():
同步本地时间
logging.info(current local time is: %d-%d-%d %d:%d:%d % time.localtime()[:6])
beijinTime = getBeijinTime()
if beijinTime is None:
logging.info(get beijinTime is None,will try again in 30 seconds...)
timer = threading.Timer(30.0,syncLocalTime)
timer.start();
else:
logging.info(get beijinTime is: %d-%d-%d %d:%d:%d % beijinTime[:6])
tm_year,tm_mon,tm_mday,tm_hour,tm_min,tm_sec = beijinTime[:6]
import os
os.system(date %d-%d-%d % (tm_year,tm_mday)) #设置日期
os.system(time %d:%d:%d.0 % (tm_hour,tm_sec)) #设置时间
logging.info(syncLocalTime complete,current local time: %d-%d-%d %d:%d:%d \n % time.localtime()[:6])
# End www.jb51.cc