python2.7_1.13_编写一个SNTP客户端

1、pip install ntplib

2、思路:先创建一个NTPClient实例,然后在这个实例上调用request()方法,把NTP服务器的地址传入方法,向NTP服务器发起一个NTP请求,响应使用ctime()函数打印出来。

3、代码如下:

# -*- coding: utf-8 -*-
import socket
import struct
import time

# 中国境内最好用的NTP服务器-北京邮电大学Internet授时服务器
NTP_SERVER = 's2m.time.edu.cn'
TIME1970 = 2208988800L


def sntp_client():
    client = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    data = '\x1b' + 47*'\0'
    client.sendto(data, (NTP_SERVER, 123))
    data, address = client.recvfrom(1024)
    if data:
        print 'Response received from:', address
    t = struct.unpack('!12I', data)[10]
    t -= TIME1970
    print '\tTime=%s' % time.ctime(t)

if __name__ == '__main__':
    sntp_client()

 

你可能感兴趣的:(python2.7_1.13_编写一个SNTP客户端)