diff --git a/generate.py b/generate.py index 22758cb77..be0b7dfe3 100644 --- a/generate.py +++ b/generate.py @@ -6,6 +6,7 @@ # "jinja2", # "requests", # "docutils", +# "backoff", # ] # /// import subprocess diff --git a/visitors.py b/visitors.py index c55e7419e..490ef0cfa 100644 --- a/visitors.py +++ b/visitors.py @@ -1,17 +1,19 @@ import csv import io -import urllib +import urllib.parse import zipfile +import backoff from requests import Session +@backoff.on_exception(backoff.expo, zipfile.BadZipFile, max_tries=5) def get_number_of_visitors(language: str, requests: Session) -> int: params = urllib.parse.urlencode( {'filters': f'[["contains","event:page",["/{language}/"]]]', 'period': 'all'} ) r = requests.get( - f'https://plausible.io/docs.python.org/export?{params}', timeout=20 + f'https://plausible.io/docs.python.org/export?{params}', timeout=40 ) with ( zipfile.ZipFile(io.BytesIO(r.content), 'r') as z,