def wait_time(self):
"""
If a rate limit error is encountered we will sleep until we can
issue the API call again.
refer https://github.com/ghostrong/weibo-crawler/blob/master/example.py
"""
try:
rl = self.rate_limit()
except Exception, e:
rl = None
if rl:
if rl['remaining_ip_hits'] > 1 and rl['remaining_user_hits'] > 1:
return 60
return rl['reset_time_in_seconds'] + 10
now = datetime.now()
reset = now + timedelta(seconds=3600 - now.minute * 60 - now.second)
reset_ts = time.mktime(datetime.timetuple(reset))
return reset_ts - time.time() + 60
评论列表
文章目录