时光紧张,先记一笔,后续优化与完善。
家里有台很多年前买的电脑,CMOS电池残废了,经常碰到开机后系统时光被重置的情况,老妈向我反应用起来很不便利。于是身为一个程序员的我想到写个小具工来帮老妈排难解纷。话不多说,小具工需求如下:
功能需求 -- 电脑开机后动自执行时光同步
非功能需求 -- 安装执行单简,无需安装额定境环
一、码代实现
基于以上需求,思绪如下:拜访络网取获北京时光,然后调用命令行来设置系统时光。程序写成Windows Service,并设置为开机动自行运。恰好前段时光在学习Python,所以算打用Python来写这个具工。体具码代如下:
![](https://i-blog.csdnimg.cn/blog_migrate/cdec0645add3fc3c328197dda5c76203.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/81178cc93a2a3bb5048d90d76e7ec935.gif)
1 def getBeijinTime(): 2 """ 3 取获北京时光 4 """ 5 try: 6 conn = httplib.HTTPConnection("www.beijing-time.org") 7 conn.request("GET", "/time.asp") 8 response = conn.getresponse() 9 print response.status, response.reason 10 if response.status == 200: 11 #剖析应响的消息 12 result = response.read() 13 logging.debug(result) 14 data = result.split("\r\n") 15 year = data[1][len("nyear")+1 : len(data[1])-1] 16 month = data[2][len("nmonth")+1 : len(data[2])-1] 17 day = data[3][len("nday")+1 : len(data[3])-1] 18 #wday = data[4][len("nwday")+1 : len(data[4])-1] 19 hrs = data[5][len("nhrs")+1 : len(data[5])-1] 20 minute = data[6][len("nmin")+1 : len(data[6])-1] 21 sec = data[7][len("nsec")+1 : len(data[7])-1] 22 23 beijinTimeStr = "%s/%s/%s %s:%s:%s" % (year, month, day, hrs, minute, sec) 24 beijinTime = time.strptime(beijinTimeStr, "%Y/%m/%d %X"