python獲取網絡時間和本地時間
今天我們來看一下如何用python獲取網絡時間和本地時間,直接上代碼吧,代碼中都有注釋。python獲取網絡時間獲取網絡時間 def getBeijinTi...
今天我們來看一下如何用python獲取網絡時間和本地時間,直接上代碼吧,代碼中都有注釋。
python獲取網絡時間
獲取網絡時間
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
python獲取本地時間
同步本地系統時間
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_mon, tm_mday)) #設置日期
os.system("time %d:%d:%d.0" % (tm_hour, tm_min, tm_sec)) #設置時間
logging.info("syncLocalTime complete, current local time: %d-%d-%d %d:%d:%d \n" % time.localtime()[:6])
本文由用戶 dfee 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!