首页 > 系统相关 >使用python,利用公网服务器时间更新windows本地时间

使用python,利用公网服务器时间更新windows本地时间

时间:2023-08-07 15:34:01浏览次数:37  
标签:python 公网 server windows 时间 str time 服务器 datetime

有时候,我们会发现无法连接windows的时间服务器或者内网的时间服务器本身的时间不准。

于是,可以通过如下python脚本示例,从公网任意服务器获取其服务器时间,这样更新的时间较为准确。

# -*- coding:utf-8 -*-

import datetime
import subprocess
import requests
import time

def set_system_time_from_server(url):
    try:
        response = requests.head(url, timeout=5)
        server_time = response.headers.get('Date')

        # 解析服务器时间(格林威治时间)
        server_time = datetime.datetime.strptime(server_time, '%a, %d %b %Y %H:%M:%S %Z')

        # 增加8小时,转换为北京时间
        server_time = server_time + datetime.timedelta(hours=8)
        server_time = server_time + datetime.timedelta(seconds=1)

        # 格式化为适合设置系统时间的字符串格式
        system_time_str = server_time.strftime('%Y-%m-%d %H:%M:%S')

        # 分割日期和时间
        date_str, time_str = system_time_str.split()

        # 设置日期
        subprocess.call(['cmd', '/c', 'date', date_str])

        # 设置时间
        subprocess.call(['cmd', '/c', 'time', time_str])

        print(u"本地系统时间已更新为服务器时间。")

    except Exception as e:
        print(u"出现错误:", str(e))

# 替换下面的url变量为你要获取时间的网站
url = 'http://www.baidu.com/'

set_system_time_from_server(url)
for i in range(30):
    print(u"感谢使用,本程序将在{}秒后自动关闭...".format(str(30-i)))
    time.sleep(1)

将该脚本,利用pyinstaller 打包成exe工具,可以在任意windows电脑上执行。

而且进一步可以加入到windows系统自动定时任务中,定时更新系统时间。

标签:python,公网,server,windows,时间,str,time,服务器,datetime
From: https://blog.51cto.com/u_16212784/6994242

相关文章

  • Windows server 2003怎么安装iisWindows server 2003安装IIS教程
    Windows2008系统服务器安装IIS之前已经分享过了,和Windows2003完全不同,今天我将详细地和你分享Windowsserver2003卸载和安装IIS的步骤方法,希望可以帮助到你~1、首先进入服务器,确定下服务器是否有安装IIS,有安装IIS,需要重装的,可以先将IIS卸载。2、卸载比安装更简单些,点击开始——......
  • python re将字符串中的数字乘二
    importredefdouble(matched):value=int(matched.group('value'))returnstr(value*2)s='A23G4HFD567'print(re.sub('(?P<value>\d+)',double,s))#1.?P<value>的意思就是命名一个名字为value的组,匹配规则符合后面的/d+#......
  • 一招让你的Python爬虫事半功倍
    在Python爬虫的世界里,你是否也被网站的IP封锁问题困扰过?别担心,我来教你一个简单而又有效的爬虫ip设置方法,让你的爬虫畅行无阻!快来跟我学,让你的Python爬虫事半功倍,轻松搞定IP封锁问题!首先,我们来了解一下爬虫ip是什么?爬虫ip:爬虫ip是指通过中间服务器转发请求并获取响应的一种技术手段......
  • python esp32 json pyserial
    esp32:#include<ArduinoJson.h>voidsetup(){Serial.begin(9600);}voidloop(){if(Serial.available()){//读取串口输入的数据StringjsonString=Serial.readStringUntil('\n');//创建JSON文档StaticJsonDocument<300>......
  • python 获取本机IP(公网,局域网)
    获取公网IP1importrequests2importre3res=requests.get("https://myip.ipip.net",timeout=5).text4ip=re.findall(r'(\d+\.\d+\.\d+\.\d+)',res)[0]5print(ip)获取局域网IP1importsocket23res=socket.gethostbyname(socket.g......
  • PEP 703作者给出的一种no-GIL的实现——python3.9的nogil版本
    PEP703的内容是什么,意义又是什么呢?可以说python的官方接受的no-GIL提议的PEP就是PEP703给出的,如果GIL帧的从python中移除那么可以说对整个python生态圈将有着跨越性发展的意义。  ====================================================  PEP703地址:https://peps.python.org......
  • ChatGPT 作为 Python 编程助手
    推荐:使用NSDT场景编辑器助你快速搭建可编辑的3D应用场景简单的数据处理脚本我认为一个好的起点是某种数据处理脚本。由于我打算让ChatGPT之后使用各种Python库编写一些机器学习脚本,这似乎是一个合理的起点。目标首先,我想尝试加载数据集;确保所有数据集值都是数值,或将其转......
  • python爬虫之scrapy框架介绍
    一、Scrapy框架简介Scrapy是一个开源的Python库和框架,用于从网站上提取数据。它为自从网站爬取数据而设计,也可以用于数据挖掘和信息处理。Scrapy可以从互联网上自动爬取数据,并将其存储在本地或在Internet上进行处理。Scrapy的目标是提供更简单、更快速、更强大的方式来从网......
  • 复习笔记|第十四章 Windows操作系统模型《操作系统原理教程》
    参考教材:《操作系统原理教程(第4版)》刘美华翟岩龙著大纲问题回答(精简版)1.Windows采用什么样的体系结构?从图中看出,系统划分为两种状态,核心态和用户态。粗线上方代表用户态进程,下方是核心态的操作系统服务。用户态的进程只能运行在受保护的地址空间。因此,四种类型的用户态进......
  • 复习笔记|第十五章 Windows进程和线程管理《操作系统原理教程》
    参考教材:《操作系统原理教程(第4版)》刘美华翟岩龙著大纲问题回答(精简版)1.管理进程和线程的数据结构:执行体进程块EPROCESS、执行体线程块ETHREAD、内核进程块KPROCESS、内核线程块KTHREAD。structEPROCESS{P285KPROCESSPCB;内核进程块ObjectTable;进程的句......