from ratelimit import limits, RateLimitException, sleep_and_retry from backoff import on_exception, expo max_hit = 5 period = 300 @limits(calls=max_hit, period=period) def StashNotes(self): url = ("https://www.r10.net/") raw_data = requests.get(url, headers=headers) if raw_data.status_code != 200: raise Exception('API response: {}'.format(raw_data.status_code)) else: ## some unnecessary things here ## I am trying to limit the API rate with a max hit of 5 and period 300, so my requests.get will not hit any more than 5 times in 300 second period. @limits(calls=max_hit,period=period) doesn't work, and can't really figure out why. Is there any other way to do this besides ratelimit library, or how to fix @limits decoration? Any kind of solution is appreciated, thanks. headers=headers contains sensitive information but it doesn't matter anyway just 2 cookie values in it. Continue reading...