写爬虫遇到需要根据返回数据中的时间字符串构造下一页链接,方法为获取到的时间增加或减少 1 毫秒。
-
获取到的时间字符串:
create_time = '2019-03-18T01:23:23.000+0800'
-
需要得到的结果为:
end_time = '2019-03-18T01:23:22.999+0800'
-
代码:
import datetime
create_time = '2019-03-18T01:23:23.000+0800'
tmptime = datetime.datetime.strptime(create_time[:-5], '%Y-%m-%dT%H:%M:%S.%f')
end_time = tmptime - datetime.timedelta(microseconds=1000) # datetime.datetime(2019, 3, 18, 1, 23, 22, 999000)
end_time = end_time.strftime('%Y-%m-%dT%H:%M:%S.%f')[:-3] + create_time[-5:] # '2019-03-18T01:23:22.999+0800'
知识点:
-
strptime : 时间字符串转化为日期格式
%f: 微秒(范围[0,999999])
示例:datetime.datetime(2019, 3, 18, 1, 23, 22, 999000)
-
strftime: 日期格式转化为字符串格式
示例:'2019-03-18T01:23:22.999000'
-
timedelta :时间差
microseconds 微秒: 1 millisecond(毫秒) 等于 1000 microseconds(微秒)
取值范围:0 <= microseconds < 1000000