python脚本设置系统时间的两种方法


Posted in Python onFebruary 21, 2016

本文为大家分享了两种python脚本设置系统时间的方法,供大家参考,具体内容如下

第一种方法,使用Python设置系统时间,即给系统校时

#电脑时间用了一段时间后,系统时间不准了,想更新一下

#在windows里面,更新系统时间,时常失败,而且速度很忙.

#在网上拷贝的代码,发现很好用,比windows自带的实现要快. 
#-*- coding:utf-8 -*- 
 
import socket 
import struct 
import time 
import win32api 
 
TimeServer = '210.72.145.44' #国家授时中心ip 
Port = 123 
 
def getTime(): 
  TIME_1970 = 2208988800L 
  client = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) 
  data = '\x1b' + 47 * '\0' 
  client.sendto(data, (TimeServer, Port)) 
  data, address = client.recvfrom(1024) 
  data_result = struct.unpack('!12I', data)[10] 
  data_result -= TIME_1970 
  return data_result 
 
def setSystemTime(): 
  tm_year, tm_mon, tm_mday, tm_hour, tm_min, tm_sec, tm_wday, tm_yday, tm_isdst = time.gmtime(getTime()) 
  win32api.SetSystemTime(tm_year, tm_mon, tm_wday, tm_mday, tm_hour, tm_min, tm_sec, 0) 
  print "Set System OK!" 
 
if __name__ == '__main__': 
  setSystemTime() 
  print "%d-%d-%d %d:%d:%d" % time.localtime(getTime())[:6]

速度很快的,只要双击一下Py文件就可以了

第二种方法,python第三方库推荐,通过ntplib在windows上同步时间
很多时候我们有通过程序脚本同步校正北京时间的需求。
在linux上同步时间比较方便,安装个ntpdate软件就行了。
但是在windows的要同步时间比较麻烦。
这时想到的就是从网络获取一个准确的时间,然后调用dos命令修改时间。
从哪里获取呢?当然是国家授时中心。
授时中心的网址是 cn.pool.ntp.org(注意,流传甚广的210.72.145.44这个ip已经失效了,直接用域名。)
不过从授时中心获取的时间需要ntp协议解析。
ntplib就是干这事的。
另外值得一提的是在dos修改日期时间要通过2个命令实现,date命令修改日期,time命令修改时间。

安装ntplib:

easy_install ntplib或pip install ntplib

下面上代码。

import os 
import time 
import ntplib 
c = ntplib.NTPClient() 
response = c.request('pool.ntp.org') 
ts = response.tx_time 
_date = time.strftime('%Y-%m-%d',time.localtime(ts)) 
_time = time.strftime('%X',time.localtime(ts)) 
os.system('date {} && time {}'.format(_date,_time))

以上就是本文的全部内容,两种python脚本设置系统时间的方法,大家学会了吗?

Python 相关文章推荐
python基础教程之获取本机ip数据包示例
Feb 10 Python
python批量生成本地ip地址的方法
Mar 23 Python
python 获取当天每个准点时间戳的实例
May 22 Python
django传值给模板, 再用JS接收并进行操作的实例
May 28 Python
Python读取txt某几列绘图的方法
Oct 14 Python
Python程序包的构建和发布过程示例详解
Jun 09 Python
Python hexstring-list-str之间的转换方法
Jun 12 Python
python利用tkinter实现屏保
Jul 30 Python
python栈的基本定义与使用方法示例【初始化、赋值、入栈、出栈等】
Oct 24 Python
python 项目目录结构设置
Feb 14 Python
使用pandas模块实现数据的标准化操作
May 14 Python
python scrapy简单模拟登录的代码分析
Jul 21 Python
python脚本设置超时机制系统时间的方法
Feb 21 #Python
Go语言基于Socket编写服务器端与客户端通信的实例
Feb 19 #Python
使用C#配合ArcGIS Engine进行地理信息系统开发
Feb 19 #Python
Python中使用OpenCV库来进行简单的气象学遥感影像计算
Feb 19 #Python
Python实现以时间换空间的缓存替换算法
Feb 19 #Python
Python使用爬虫猜密码
Feb 19 #Python
使用Python简单的实现树莓派的WEB控制
Feb 18 #Python
You might like
PHP实现限制IP访问的方法
2017/04/20 PHP
yii2中LinkPager增加总页数和总记录数的实例
2017/08/28 PHP
PHP PDOStatement::debugDumpParams讲解
2019/01/30 PHP
javascript 写类方式之一
2009/07/05 Javascript
Javascript 继承机制的实现
2009/08/12 Javascript
clientX,pageX,offsetX,x,layerX,screenX,offsetLeft区别分析
2010/03/12 Javascript
关于JQuery($.load)事件的用法和分析
2013/04/09 Javascript
jQuery怎么解析Json字符串(Json格式/Json对象)
2013/08/09 Javascript
纯JS实现动态时间显示代码
2014/02/08 Javascript
js实现的标题栏新消息闪烁提示效果
2014/06/06 Javascript
jQuery中:radio选择器用法实例
2015/01/03 Javascript
js实现人民币大写金额形式转换
2016/04/27 Javascript
jquery实现上传文件大小类型的验证例子(推荐)
2016/06/25 Javascript
JS+CSS3实现超炫的散列画廊特效
2016/07/16 Javascript
微信小程序之前台循环数据绑定
2017/08/18 Javascript
js使用Promise实现简单的Ajax缓存
2018/11/14 Javascript
Vue中图片Src使用变量的方法
2019/10/30 Javascript
JS实现打砖块游戏
2020/02/14 Javascript
详解Python中break语句的用法
2015/05/14 Python
深入解答关于Python的11道基本面试题
2017/04/01 Python
有趣的python小程序分享
2017/12/05 Python
pandas 将索引值相加的方法
2018/11/15 Python
总结Python图形用户界面和游戏开发知识点
2019/05/22 Python
在windows下使用python进行串口通讯的方法
2019/07/02 Python
Python 函数绘图及函数图像微分与积分
2019/11/20 Python
HTML5梦幻之旅——炫丽的流星雨效果实现过程
2013/08/06 HTML / CSS
Java提供了哪些企业应用编程接口
2015/02/13 面试题
应届生.NET方向面试题
2015/05/23 面试题
中专毕业生自荐信
2013/11/16 职场文书
上班睡觉检讨书
2014/01/09 职场文书
奶茶专卖店创业计划书
2014/01/18 职场文书
圣诞节活动策划方案
2014/06/09 职场文书
2014年酒店工作总结与计划
2014/11/17 职场文书
2016校本研修培训心得体会
2016/01/08 职场文书
MySQL脏读,幻读和不可重复读
2022/05/11 MySQL
delete in子查询不走索引问题分析
2022/07/07 MySQL