python自动获取北京时间_python实现定时同步本机与北京时间的方法

本文介绍了用Python实现定时同步本机与北京时间的方法。代码从www.beijing - time.org获取标准北京时间,再将其同步到本地。通过定义获取时间和同步时间的函数,在主程序中循环调用同步函数并设置间隔时间,实现定时同步。

本文实例讲述了python实现定时同步本机与北京时间的方法。分享给大家供大家参考。具体如下:

这段python代码首先从www.beijing-time.org上获取标准的北京时间,然后同步获取的北京时间到本地

# -*- coding: utf-8 -*-import time,httplibimport threadingdef 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() 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: return Nonedef syncLocalTime(): """ 同步本地时间 """ beijinTime = getBeijinTime() if beijinTime is None: timer = threading.Timer(30.0, syncLocalTime) timer.start() else: 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))#设置时间if __name__=='__main__': while True: syncLocalTime() time.sleep(30)

希望本文所述对大家的Python程序设计有所帮助。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值