Python - 将时区添加到时间戳

Python - Add time zone to timestamp

我使用 chrome 时间戳并将其转换为可读日期但时间不正确

timestamp_formated = str(datetime.datetime(1601, 1, 1) + datetime.timedelta(microseconds=last_visit_time))

似乎需要添加时区

last_visit_time 的示例:13292010189305268

假设 Chrome 时间戳表示自 1601 UTC 以来的微秒数,您需要让 datetime aware:

from datetime import datetime, timezone, timedelta

epoch = datetime(1601, 1, 1, tzinfo=timezone.utc)
timestamp = epoch + timedelta(microseconds=last_visit_time)
print(timestamp)

如果您想针对 non-UTC 时区进行格式化,请添加一个转换步骤:

local_timestamp = timestamp.astimezone(the_timezone)

如果您想本地化(使用特定时区的日期和时间),您可以使用 pytz

t = datetime(
2013, 5, 11, hour=11, minute=0,
tzinfo=pytz.timezone('Europe/Warsaw')

)