Windows一用就是几年,总会碰到个更改系统时间的时候。可是把系统时间调坏了容易,要调出个正确可就没那么简单了。几年前(还上大学的时候,大概是大三吧)用C#写过一个ntp的程序,但是时过境迁,NTP的IP更改实在太频繁了(难道是因为没有商业利润?);windows的“Internet 时间”我从来就没有试成功过(有人知道why嘛?);国家授时中心(http://www.time.ac.cn)的什么时间精灵自从windows变sp2后在我的电脑上也不能用了----这算什么时代?。

看来,无奈下只好找个http服务器来进行网络校时了?反正像我们这种凡人也不需要那种不差毫厘的时间,再说就凭windows那种时间精度,唉,啥也不说了.........

import socket,urllib2,win32api,time

def updateSysTime():
    try:
        srv=urllib2.urlopen('http://www.baidu.com')    
        date=srv.headers.dict['date']
        gmt=time.strptime(date[5:25], "%d %b %Y %H:%M:%S")
##      SetSystemTime函数的参数是使用gmt时间
        return win32api.SetSystemTime(gmt.tm_year,gmt.tm_mon,gmt.tm_wday,gmt.tm_mday,gmt.tm_hour,gmt.tm_min,gmt.tm_sec,0)
    except:
        return 0

def printCurTime():
    now = time.localtime(time.time())
    print time.strftime("%Z %Y-%m-%d %H:%M:%S", now)

##超时时间,以 秒 为单位
timeout=0.3
socket.setdefaulttimeout(timeout)

print u'当前系统时间:'
printCurTime()
print '\r\n'

i,maxTry=1,6
while i<maxTry and updateSysTime()==0:
    print u'网络超时,第%i次重试'%i
    i=i+1
 
if i<maxTry:
    print u'网络校时成功:'
    printCurTime()
else:
    print u'\r\n网络校时失败,请检查网络!'

因为设置了超时时间仅为0.3秒,所以我想无论如何这样的时间精度都是可以接受的。实际上,在我的测试中即使设置timeout=0.01的情况下也没有出现过超时错误----当然,我是在北京试的。

转载于:https://www.cnblogs.com/flappy/archive/2007/06/06/773969.html

网络校时(非NTP)相关推荐

  1. NTP校时器(NTP网络校时器-NTP校时系统)

    NTP校时器(NTP网络校时器-NTP校时系统) NTP校时器(NTP网络校时器-NTP校时系统) 技术交流-岳峰-15901092122:qq-522508213: 近几年来,随着变电站自动化水平的 ...

  2. NTP校时系统(网络校时服务器)让交通系统更加智慧

    NTP校时系统(网络校时服务器)让交通系统更加智慧 NTP校时系统(网络校时服务器)让交通系统更加智慧 工业文明以来,城市逐渐从数字化城市走向信息化城市再到高度智慧化的新型智慧城市,我们即将进入智慧城 ...

  3. 【京准小课堂】NTP网络校时服务器(时间同步系统)参数详解

    [京准小课堂]NTP网络校时服务器(时间同步系统)参数详解 [京准小课堂]NTP网络校时服务器(时间同步系统)参数详解 1.系统概述 在信息时代的今天,准确统一的时钟系统已广泛的应用在车站.医院.学校 ...

  4. GPS北斗校时器(NTP网络校时服务器)医院应用方案

    GPS北斗校时器(NTP网络校时服务器)医院应用方案 GPS北斗校时器(NTP网络校时服务器)医院应用方案 用户需求分析 医院时钟系统主要为全医院提供提供统一的准确时间,其主要作用是为整个医院的计算机 ...

  5. NTP校时服务器(网络校时)让通用机场更精准

    NTP校时服务器(网络校时)让通用机场更精准 NTP校时服务器(网络校时)让通用机场更精准 1.系统需求 为整个港口枢纽和各个弱电子系统(视频监控.智能闸口.广播等系统)提供一个标准的时钟同步信号,使 ...

  6. 计算机网络授时设置,网络授时系统,网络校时系统

    网络授时系统,网络校时系统网络授时系统,网络校时系统 网络授时系统,网络校时系统网络授时系统,网络校时系统 一.网络授时系统产品介绍: 网络授时系统是针对计算机.自动化装置等进行校时而研发的高科技设备 ...

  7. GPS北斗校时(NTP校时服务器)在某市国土资源局投入使用

    GPS北斗校时(NTP校时服务器)在某市国土资源局投入使用 GPS北斗校时(NTP校时服务器)在某市国土资源局投入使用 许多电脑网络都使用基于互联网的时间服务器以便保持自己系统的同步性.问题是,无论他 ...

  8. 在电脑上开启网络校时服务

    在电脑上开启网络校时服务的方法: 1.通过开始菜单,输入regedit命令后打开注册表设定画面,此时请一定备份注册表文件. 2.修改以下选项的键值 HKEY_LOCAL_MACHINE\SYSTEM\ ...

  9. linux校时 某个服务器,Linux系统中如何进行网络校时?

    linux系统对于大多数用户来说,肯定没有windows系统那么熟悉,下文介绍了Linux系统中如何进行网络校时方法,具体内容如下所述. 我们都知道在Linux系统上有两个时间,一个是Linux系统的 ...

最新文章

  1. java猜数字游戏界面_用java来写一个猜数字游戏,要用到界面
  2. hdu4539 郑厂长系列故事——排兵布阵 + POJ1158 炮兵阵地
  3. IntelliJ IDEA 使用Maven工具 (新手入门简单操作,maven的下载,安装,配置)
  4. HDU5874 - Friends and Enemies
  5. 完美海报设计的4个技巧
  6. RHEL5安装无线网卡驱动
  7. 3月17日 基于特征点的RANSAC最优估计基础矩阵,稀疏光流法综述
  8. java监控屏幕_Java实现简单屏幕监控
  9. 个人投资者金融期货开户的条件
  10. 怎么起一个好听的商务邮箱名字?
  11. 爬取链家任意城市租房数据(北京朝阳)
  12. 第二篇:STM32F7 + RT-Thread + ESP8266
  13. 验证英文日期格式的正则表达式
  14. c语言中b的作用是什么意思,C语言中是什么意思?ab怎么理解?
  15. 玖益科技:商品详情页的提升方法
  16. 异地北京办理居住证详细材料
  17. 打造最美HTML5 3D机房 —— 第二季重磅回归
  18. web前端 | 博客(八)用户信息修改功能
  19. 智联卓聘 卓聘聊聊(IM)开发实践
  20. [转]QNX与Linux OS比较优劣-QNX与Linux两家未来有望独霸车载电子操作系统

热门文章

  1. android rss_Android RSS阅读器应用程序
  2. Android Google Map –两点之间的绘图路线
  3. android浮动按钮_Android浮动操作按钮示例教程
  4. elasticsearch的javaAPI之index
  5. 如何一边训练一遍验证
  6. 关于FileAttributes
  7. 开课吧Java课堂:如何创建多线程
  8. Android Gradle进阶配置指南
  9. 高通-物理专线2.0新版资费计划
  10. swoole 安装测试