直接从 python 中的网站获取 UTC 时间

get UTC time directly from a website in python

我想直接从可以提供的网站获取 utc 时间。我不想使用 python 模块,因为它们给我系统时间,而我的系统时间不显示正确的时间。 如何在不更改系统时间的情况下获得正确的 UTC 时间? 我用

import ntplib,datetime
x = ntplib.NTPClient()
datetime.datetime.utcfromtimestamp(x.request('europe.pool.ntp.org').tx_time)

但是我得到这个错误

raise NTPException("No response received from %s." % host)
ntplib.NTPException: No response received from europe.pool.ntp.org.

你能试着打电话给 datetime.utcnow() 吗?来自 python docs

这是我的输出

>>> import datetime
>>> datetime.datetime.utcnow()
datetime.datetime(2018, 11, 4, 9, 47, 59, 572104)

编辑为 OP 遇到上述问题

至于基于网络的解决方案,这对我来说很好用(同时避开你的网站

>>> import requests
>>> x = requests.get('http://worldtimeapi.org/api/timezone/Europe/London.txt')
>>> print(x.content)
b'abbreviation: GMT\ndatetime: 2018-11-04T10:09:18.395273+00:00\nday_of_week: 0\nday_of_year: 308\ndst: false\ndst_from: \ndst_until: \ntimezone: Europe/London\nunixtime: 1541326158\nutc_offset: +00:00\nweek_number: 44'

更新

您可以像这样获取日期时间。我确信有更好的方法可以做到这一点,但这种方法适用于这个特定的用例。

>>> import requests
>>> x = requests.get('http://worldtimeapi.org/api/timezone/Europe/London.txt')
>>> y = x.text
>>> print(y[27:47])
2018-11-04T11:01:46