python中的ntp客户端

新手上路,请多包涵

我用 python 编写了一个 ntp 客户端来查询时间服务器并显示时间和程序执行但没有给我任何结果。我使用的是python的2.7.3集成开发环境,操作系统是Windows 7,代码如下:

 # File: Ntpclient.py
from socket import AF_INET, SOCK_DGRAM
import sys
import socket
import struct, time

# # Set the socket parameters

host = "pool.ntp.org"
port = 123
buf = 1024
address = (host,port)
msg = 'time'

# reference time (in seconds since 1900-01-01 00:00:00)
TIME1970 = 2208988800L # 1970-01-01 00:00:00

# connect to server
client = socket.socket( AF_INET, SOCK_DGRAM)
client.sendto(msg, address)
msg, address = client.recvfrom( buf )

t = struct.unpack( "!12I", data )[10]
t -= TIME1970
print "\tTime=%s" % time.ctime(t)

原文由 Howard Hugh 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 997
1 个回答

使用 ntplib

以下内容适用于 Python 2 和 3:

 import ntplib
from time import ctime
c = ntplib.NTPClient()
response = c.request('pool.ntp.org')
print(ctime(response.tx_time))

输出:

 Fri Jul 28 01:30:53 2017

原文由 Anuj Gupta 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏