如何在日期时间解析Errno 22

时间:2019-03-22 21:39:59

标签: python python-datetime

在传递常规整数timetamtammp时在Errno 22 Invalida参数错误接收

我尝试添加普通的整数时间戳

final_change_int = dictionary["timestamp"]
print(final_change_int)
datetime.fromtimestamp(final_change_int)

结果

1551766560457
---------------------------------------------------------------------------
OSError                                   Traceback (most recent call last)
<ipython-input-63-c6188e2f6967> in <module>
      1 final_change_int = dictionary["timestamp"]
      2 print(final_change_int)
----> 3 datetime.fromtimestamp(final_change_int)

OSError: [Errno 22] Invalid argument

1 个答案:

答案 0 :(得分:1)

我希望你做得很好,

不幸的是,在这种情况下,时间戳的值似乎是错误的。

您的时间戳记指示的日期是12/7/51143,在2:47:37。基于操作系统,它将不支持该日期。

在这种情况下,您最好的办法是将代码包装在try...except

并在时间戳错误的情况下执行所需的操作。

N.B:就您而言,看来时间戳必须除以1000,才能得出正确的日期。

In [3]: datetime.fromtimestamp(1551766560457/1000)                                                                                                                                                                                                                             
Out[3]: datetime.datetime(2019, 3, 5, 7, 16, 0, 457000)

祝您有美好的一天, 我最诚挚的问候。

G