今天我们来看一下如何用python获取网络时间和本地时间,直接上代码吧,代码中都有注释。

python获取网络时间

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
获取网络时间
 def getBeijinTime():
     """
    获取北京时间
     """
     try:
         conn = httplib.HTTPConnection("www.beijing-time.org")
         conn.request("GET""/time.asp")
         response = conn.getresponse()
         print response.status, response.reason
         if response.status == 200:
             #解析响应的消息
             result = response.read()
             logging.debug(result)
             data = result.split("\r\n")
             year = data[1][len("nyear")+1 len(data[1])-1]
             month = data[2][len("nmonth")+1 len(data[2])-1]
             day = data[3][len("nday")+1 len(data[3])-1]
             #wday = data[4][len("nwday")+1 : len(data[4])-1]
             hrs = data[5][len("nhrs")+1 len(data[5])-1]
             minute = data[6][len("nmin")+1 len(data[6])-1]
             sec = data[7][len("nsec")+1 len(data[7])-1]
               
             beijinTimeStr = "%s/%s/%s %s:%s:%s" % (year, month, day, hrs, minute, sec)
             beijinTime = time.strptime(beijinTimeStr, "%Y/%m/%d %X")
             return beijinTime
     except:
         logging.exception("getBeijinTime except")
         return None

python获取本地时间

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
同步本地系统时间
 def syncLocalTime():
     """
     同步本地时间
     """
     logging.info("current local time is: %d-%d-%d %d:%d:%d" % time.localtime()[:6])
       
     beijinTime = getBeijinTime()
     if beijinTime is None:
         logging.info("get beijinTime is None, will try again in 30 seconds...")
         timer = threading.Timer(30.0, syncLocalTime)
         timer.start();
     else:
         logging.info("get beijinTime is: %d-%d-%d %d:%d:%d" % beijinTime[:6])
               
         tm_year, tm_mon, tm_mday, tm_hour, tm_min, tm_sec = beijinTime[:6]
         import os
         os.system("date %d-%d-%d" % (tm_year, tm_mon, tm_mday))     #设置日期
         os.system("time %d:%d:%d.0" % (tm_hour, tm_min, tm_sec))    #设置时间
         logging.info("syncLocalTime complete, current local time: %d-%d-%d %d:%d:%d \n" % time.localtime()[:6])

python获取网络时间和本地时间的更多相关文章

  1. Python: 处理mongodb文档,怎么让UTC时间转换为本地时间?

    存储数据到MongoDB数据库时,一般我们会加一个更新数据的时间update_time.这时在python代码中 会用到datetime模块以便获取当前系统时间,但是存入到MongoDB数据库时,存储 ...

  2. Python中如何把一个UTC时间转换为本地时间

    需求: 将20141126010101格式UTC时间转换为本地时间. 在网上搜了好长时间都没有找到完美的解决方案.有的引用了第三方库,这就需要在现网安装第三方的软件.这个是万万不可的.因为真实环境不一 ...

  3. [转帖]UTC时间、GMT时间、本地时间、Unix时间戳

    UTC时间.GMT时间.本地时间.Unix时间戳 https://www.cnblogs.com/xwdreamer/p/8761825.html 引用: https://blog.csdn.net/ ...

  4. utc时间、本地时间及时间戳转化

    1.时间戳的概念 时间戳的定义请看百科unix时间戳,需要注意的时间戳为当前时刻减去UTC时间(1970.1.1)零点时刻的秒数差,与当前系统所处的时区无关,同一时刻不管在任何时区下得到的时间戳都是一 ...

  5. 关于UTC时间和本地时间

    收藏了个类Publics  可以实现本地时间和UTC时间的转换 UCT时间=本地时间-8    本地时间比UTC时间快8小时 element-ui的日期选择器上  选择的时间显示的是本地时间   但实 ...

  6. 关于时间:UTC时间、GMT时间、本地时间、Unix时间戳

    1.UTC时间 与 GMT时间我们可以认为格林威治时间就是时间协调时间(GMT=UTC),格林威治时间和UTC时间均用秒数来计算的. 2.UTC时间 与 本地时UTC + 时区差 = 本地时间时区差东 ...

  7. js----UTC时间于本地时间相差8小时问题

    js----UTC时间于本地时间相差8小时问题 js获取周几有两个方法getDay() getUTCDay(),但是它们是有区别的,前者返回的本地时间,后者返回的UTC时间,一般情况下,两者相差8个小 ...

  8. ubuntu下的时间设定(硬件时间,系统时间,本地时间)

    问题的来由是在这里: 在cron里设定任务是在凌晨6点执行,检查日志时发现时间总是不对,是在22点左右的时间执行的.研究发现,任务是在本地时间的6点执行了,但不知为什么syslog中的时间都是为utc ...

  9. svn服务器时间与本地时间不同步解决

    在用svn的时候,由于svn的时间与本地不同步,导致每次看log总是需要对时间. 今天修改了svn服务器时间与本地同步.只需要修改svn服务器时间与本地时间相同即可,但要主要修改时区,不然会出现时间又 ...

随机推荐

  1. SGU 185.Two shortest (最小费用最大流)

    时间限制:0.25s 空间限制:4M 题意: 在n(n<=400)个点的图中,找到并输出两条不想交的最短路.不存在输出“No sulotion”: Solution: 最小费用最大流 建图与po ...

  2. xv6中存储cpu和进程信息的技巧

    xv6是一个支持多处理器的Unix-like操作系统, 近日阅读源码时发现xv6在记录当前CPU和进程状态时非常tricky 首先,上代码: extern struct cpu cpus[NCPU]; ...

  3. vijos P1055奶牛浴场&& Winter Camp2002

    这道题是我在寒假的模拟赛里碰到的,现在想起来仍觉得余味无穷.题目大意大致如下:给你一个矩形并在其中划出一个最大的子矩形,当然,在这个矩形里有些地方是取不到的,也就是说我们划的这个子矩形不能包含这些点( ...

  4. nodejs版本控制

    本方法基于https://segmentfault.com/a/1190000004855835修改 配置: 使用的nvmw的git 地址https://github.com/hakobera/nvm ...

  5. opencv之图像膨胀

    #include <cv.h> #include <highgui.h> void main() { IplImage* src; IplImage*dst; src=cvLo ...

  6. Python自动化运维之31、Tornado框架

    Tornado 官网:http://www.tornadoweb.org/en/stable/ Tornado 是 FriendFeed 使用的可扩展的非阻塞式 web 服务器及其相关工具的开源版本. ...

  7. Linq/EF/lambda Group by/Order by 多个字段详细用法

    1)单个字段Group by: //a.Key类型与a.Province字段类型一样  .GroupBy(a => a.Province).Select(a => a.Key).ToLis ...

  8. Node.js入门实例程序

    在使用Node.js创建实际“Hello, World!”应用程序之前,让我们看看Node.js的应用程序的部分.Node.js应用程序由以下三个重要组成部分: 导入需要模块: 我们使用require ...

  9. Kaggle Bike Sharing Demand Prediction – How I got in top 5 percentile of participants?

    Kaggle Bike Sharing Demand Prediction – How I got in top 5 percentile of participants? Introduction ...

  10. ioc开发学习 --简易计时器 (基于iPhone5屏幕尺寸开发)

    超简单的秒表:包含:开始.暂停(不清零).清零 方法 核心代码 // // ViewController.m // MiaoBiao // // Created by Ibokan on 15/8/1 ...