近期,由于我的电脑装了双系统,但是有个后遗症,就是windows系统时间经常不对,不堪其扰,所以就想有没有一个办法可以进行时间同步呢?这个时候我们的python就派上用场了。
封面图
安装pywin32
首先我们需要安装一个第三方库pywin32:
pip install pywin32
脚本代码
同步时间脚本
打包成exe
为了使我们的脚本能够打包成可执行程序,我们需要安装另外一个库pyinstaller,执行如下命令:
pip install pyinstaller
然后在项目根目录下运行
pyinstaller -F 你的脚本名称.pyw
注意:此处为什么不适用.py而使用.pyw的原因我不想在程序执行的时候弹出命令提示符,而pyw正好满足这个需求,关于pyw和py的区别,可以自行百度。
此时,在我们的项目根目录下应该有个dist目录,该目录下就是我们打包成功的可执行程序,如下图所示:
同步时间可执行程序
这个时候我们右箭选择“以管理员权限运行”,就可以同步时间了。
自动运行
这个时候虽然我们可以运行该程序,但是每次手动操作,有些过于繁琐,这个时候我们就需要windows系统自定的“任务计划程序了”。以win10为例,在左下角搜索框输入“任务计划”
搜索任务计划
点击“任务计划程序”我们来配置定时任务。
配置定时任务
点击这里的“创建任务...”
创建任务
然后我们来配置任务,填写常规选项卡
常规填写示意
注意:一定要勾选“以最高权限运行”
然后填写触发器,选择“新建”,会弹出如下窗口:
如下图填写触发器:
触发器填写示意
然后我们选择”操作“选项卡,选择需要运行的程序,即刚刚我们打包的exe程序,如下图所示:
操作填写示意
切换到”条件“选项卡,如下图所示填写:
条件填写示意
然后点击确定,我们会发现在”任务计划程序库“里面会多出一条新任务,如图所示:
任务计划程序库
点击”运行“,即可运行该计划任务,此时我们已大功告成。
总结:
- 必须以”管理员权限“(最高权限)运行。
- 计划任务最小间隔是5分钟,你可以通过自己的需要调整间隔。
- 必须在联网的情况下才能同步时间,由于脚本是获取网络时间和系统时间进行同步。