python 网络_python获取网络时间和本地时间

今天我们来看一下如何用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])

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com

特别注意:本站所有转载文章言论不代表本站观点!

本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值