1

python在爬取数据过程中,会遇到以时间戳表示的日期,此时为了看上去方便,都需要将其转换为‘2020-03-12’这样的格式。

2

先写上代码:

import time
date = '1583424688064'
timeArray=time.localtime(int(date))
print(time.strftime("%Y-%m-%d", timeArray))
此时运行就会出现错误:OSError: [Errno 22] Invalid argument

3

错误的原因不在于格式,因为我们已通过int(date)进行了转换,真正的错误在于date的长度,一般爬取下来时显示的时间戳时长都是13位的数字,而time.localtime的参数要的长度是10位,所以我们需要将其/1000并取整即可。

4

import time
date = '1583424688064'
timeArray=time.localtime(int(int(date)/1000))
print(time.strftime("%Y-%m-%d", timeArray))

此时就能得到2020-03-06这样的格式了。

END