refactor: add headers module

This commit is contained in:
2026-09-04 10:23:00 +03:00
parent b5a8a1536c
commit 24214ebc3a
5 changed files with 57 additions and 61 deletions
+2 -8
View File
@@ -10,25 +10,20 @@ logger = logging.getLogger("source")
RequestMode = Literal["base", "browser"]
DEFAULT_REQUEST_MODE: RequestMode = "base"
DEFAULT_METHOD = "GET"
DEFAULT_METHOD: str = "GET"
class ApiSource:
DEFAULT_USER_AGENT = (
"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36"
)
DEFAULT_TIMEOUT = 30.0
def __init__(
self,
base_url,
user_agent: str = DEFAULT_USER_AGENT,
timeout: float = DEFAULT_TIMEOUT,
cookies: dict[str, str] | None = None,
headers: dict[str, str] | None = None,
):
self._base_url = base_url
self._user_agent = user_agent
self._timeout = timeout
self._cookies = cookies
self._headers = headers
@@ -39,9 +34,8 @@ class ApiSource:
method: str = DEFAULT_METHOD,
data: Any | None = None,
) -> str:
headers = {"User-Agent": self._user_agent, **(self._headers or {})}
async with aiohttp.ClientSession(
headers=headers,
headers=self._headers,
cookies=self._cookies,
raise_for_status=True,
) as session: