providers: addic7ed: enforce limits once they're hit, to avoid unnecessary search queries #723

This commit is contained in:
panni
2020-04-14 05:06:02 +02:00
parent 31ff93c3f1
commit c787e671c3
@@ -406,6 +406,10 @@ class Addic7edProvider(_Addic7edProvider):
now = datetime.datetime.now()
one_day = datetime.timedelta(hours=24)
def raise_limit():
logger.info("Addic7ed: Downloads per day exceeded (%s)", cap)
raise DownloadLimitPerDayExceeded
if not isinstance(last_dls, types.ListType):
last_dls = []
else:
@@ -417,8 +421,7 @@ class Addic7edProvider(_Addic7edProvider):
amount = len(last_dls)
if amount >= cap:
logger.info("Addic7ed: Downloads per day exceeded (%s)", cap)
raise DownloadLimitPerDayExceeded
raise_limit()
# download the subtitle
r = self.session.get(self.server_url + subtitle.download_link, headers={'Referer': subtitle.page_link},
@@ -441,4 +444,8 @@ class Addic7edProvider(_Addic7edProvider):
subtitle.content = fix_line_ending(r.content)
last_dls.append(datetime.datetime.now())
region.set("addic7ed_dls", last_dls)
logger.info("Addic7ed: Used %s/%s downloads", amount+1, cap)
logger.info("Addic7ed: Used %s/%s downloads", amount + 1, cap)
if amount + 1 >= cap:
raise_limit()