目的&思路 本次要构造的时间戳,主要有2个用途:
headers中需要传当前时间对应的13位(毫秒级)时间戳
查询获取某一时间段内的数据(如30天前~当前时间)
接下来要做的工作:
获取当前日期,如2020-05-08,定为结束时间
设置时间偏移量,获取30天前对应的日期,定为开始时间
将开始时间与结束时间转换为时间戳
python中生成时间戳的话,可以使用time模块直接获取当前日期的时间戳,但是因为需要进行时间偏移,所以我这次并未使用time模块,而是先用 datetime 模块获取当前日期;然后用 datetime 的 timedelta 来获取n天前的日期;最后再使用 timestamp() 方法将日期转换为时间戳
2. 一个简单易懂的例子 按照上面的思路,时间戳参数创建过程如下
打印一下结果
找一个时间戳转换网站,看看上述生成的开始日期的时间戳是否与原本日期对应
可以看出来,大致是能对应上的(网上很多人使用round()方法进行了四舍五入,因为我对精度没那么高要求,所以直接取整了)
需要注意的是:timestamp() 方法默认生成的是10位(秒级)时间戳,如果要转换为13位(毫秒级)的话,把结果*1000才行
补充timedelta的几个参数
datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)
领取专属 10元无门槛券
私享最新 技术干货