Skip to content

Commit 2a650bc

Browse files
committed
Use requests session
1 parent 8115356 commit 2a650bc

File tree

3 files changed

+12
-7
lines changed

3 files changed

+12
-7
lines changed

build_status.py

+5-3
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@
88
import tomllib
99
from collections.abc import Iterator
1010

11-
import requests
11+
from requests import Session
1212

1313

14-
def get_languages() -> Iterator[tuple[str, bool]]:
14+
def get_languages(requests: Session) -> Iterator[tuple[str, bool]]:
1515
data = requests.get(
1616
'https://raw.githubusercontent.com/'
1717
'python/docsbuild-scripts/refs/heads/main/config.toml',
@@ -25,7 +25,9 @@ def get_languages() -> Iterator[tuple[str, bool]]:
2525

2626

2727
def main() -> None:
28-
languages = {language: in_switcher for language, in_switcher in get_languages()}
28+
languages = {
29+
language: in_switcher for language, in_switcher in get_languages(Session())
30+
}
2931
print(languages)
3032
for code in ('en', 'pl', 'ar', 'zh-cn', 'id'):
3133
print(f'{code}: {code in languages} {languages.get(code)}')

generate.py

+5-2
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
from pathlib import Path
1717
from tempfile import TemporaryDirectory
1818

19+
from requests import Session
1920
from git import Repo
2021
from jinja2 import Template
2122

@@ -44,12 +45,14 @@ def get_completion_progress() -> Iterator['LanguageProjectData']:
4445
)
4546
subprocess.run(['make', '-C', cpython_dir / 'Doc', 'venv'], check=True)
4647
subprocess.run(['make', '-C', cpython_dir / 'Doc', 'gettext'], check=True)
47-
languages_built = dict(build_status.get_languages())
48+
languages_built = dict(build_status.get_languages(session := Session()))
4849
for language, repo in get_languages_and_repos(devguide_dir):
4950
built = language.code in languages_built
5051
if repo:
5152
completion, translators_data = get_completion(clones_dir, repo)
52-
visitors_num = get_number_of_visitors(language.code) if built else 0
53+
visitors_num = (
54+
get_number_of_visitors(language.code, session) if built else 0
55+
)
5356
else:
5457
completion = 0.0
5558
translators_data = TranslatorsData(0, False)

visitors.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@
33
import urllib
44
import zipfile
55

6-
import requests
6+
from requests import Session
77

88

9-
def get_number_of_visitors(language: str) -> int:
9+
def get_number_of_visitors(language: str, requests: Session) -> int:
1010
params = urllib.parse.urlencode(
1111
{'filters': f'[["contains","event:page",["/{language}/"]]]', 'period': 'all'}
1212
)

0 commit comments

Comments
 (0)