|
2 | 2 | import uuid
|
3 | 3 | from dataclasses import asdict, dataclass, field
|
4 | 4 | from dataclasses import fields as get_fields
|
5 |
| -from typing import Any, Optional, TypeVar, Union |
| 5 | +from typing import Any, List, Mapping, Optional, Set, TypeVar, Union |
6 | 6 |
|
7 | 7 | from tls_requests.models.encoders import StreamEncoder
|
8 | 8 | from tls_requests.models.libraries import TLSLibrary
|
@@ -178,7 +178,7 @@ class _BaseConfig:
|
178 | 178 | """Base configuration for TLSSession"""
|
179 | 179 |
|
180 | 180 | @classmethod
|
181 |
| - def model_fields_set(cls) -> set[str]: |
| 181 | + def model_fields_set(cls) -> Set[str]: |
182 | 182 | return {
|
183 | 183 | model_field.name
|
184 | 184 | for model_field in get_fields(cls)
|
@@ -341,19 +341,19 @@ class CustomTLSClientConfig(_BaseConfig):
|
341 | 341 |
|
342 | 342 | """
|
343 | 343 |
|
344 |
| - alpnProtocols: list[str] = None |
345 |
| - alpsProtocols: list[str] = None |
| 344 | + alpnProtocols: List[str] = None |
| 345 | + alpsProtocols: List[str] = None |
346 | 346 | certCompressionAlgo: str = None
|
347 | 347 | connectionFlow: int = None
|
348 |
| - h2Settings: list[str] = None |
349 |
| - h2SettingsOrder: list[str] = None |
350 |
| - headerPriority: list[str] = None |
| 348 | + h2Settings: List[str] = None |
| 349 | + h2SettingsOrder: List[str] = None |
| 350 | + headerPriority: List[str] = None |
351 | 351 | ja3String: str = None
|
352 |
| - keyShareCurves: list[str] = None |
353 |
| - priorityFrames: list[str] = None |
354 |
| - pseudoHeaderOrder: list[str] = None |
355 |
| - supportedSignatureAlgorithms: list[str] = None |
356 |
| - supportedVersions: list[str] = None |
| 352 | + keyShareCurves: List[str] = None |
| 353 | + priorityFrames: List[str] = None |
| 354 | + pseudoHeaderOrder: List[str] = None |
| 355 | + supportedSignatureAlgorithms: List[str] = None |
| 356 | + supportedVersions: List[str] = None |
357 | 357 |
|
358 | 358 |
|
359 | 359 | @dataclass
|
@@ -424,19 +424,19 @@ class TLSConfig(_BaseConfig):
|
424 | 424 | """
|
425 | 425 |
|
426 | 426 | catchPanics: bool = False
|
427 |
| - certificatePinningHosts: dict[str, str] = field(default_factory=dict) |
| 427 | + certificatePinningHosts: Mapping[str, str] = field(default_factory=dict) |
428 | 428 | customTlsClient: Optional[CustomTLSClientConfig] = None
|
429 | 429 | followRedirects: bool = False
|
430 | 430 | forceHttp1: bool = False
|
431 |
| - headerOrder: list[str] = field(default_factory=list) |
432 |
| - headers: dict[str, str] = field(default_factory=dict) |
| 431 | + headerOrder: List[str] = field(default_factory=list) |
| 432 | + headers: Mapping[str, str] = field(default_factory=dict) |
433 | 433 | insecureSkipVerify: bool = False
|
434 | 434 | isByteRequest: bool = False
|
435 | 435 | isByteResponse: bool = True
|
436 | 436 | isRotatingProxy: bool = False
|
437 | 437 | proxyUrl: str = ""
|
438 | 438 | requestBody: Union[str, bytes, bytearray, None] = None
|
439 |
| - requestCookies: list[TLSRequestCookiesConfig] = field(default_factory=list) |
| 439 | + requestCookies: List[TLSRequestCookiesConfig] = field(default_factory=list) |
440 | 440 | requestMethod: MethodTypes = None
|
441 | 441 | requestUrl: Optional[str] = None
|
442 | 442 | sessionId: str = field(default_factory=lambda: str(uuid.uuid4()))
|
@@ -471,7 +471,7 @@ def to_dict(self) -> dict:
|
471 | 471 | def copy_with(
|
472 | 472 | self,
|
473 | 473 | session_id: str = None,
|
474 |
| - headers: dict[str, str] = None, |
| 474 | + headers: Mapping[str, str] = None, |
475 | 475 | cookies: TLSCookiesTypes = None,
|
476 | 476 | method: MethodTypes = None,
|
477 | 477 | url: URLTypes = None,
|
@@ -515,7 +515,7 @@ def copy_with(
|
515 | 515 | def from_kwargs(
|
516 | 516 | cls,
|
517 | 517 | session_id: str = None,
|
518 |
| - headers: dict[str, str] = None, |
| 518 | + headers: Mapping[str, str] = None, |
519 | 519 | cookies: TLSCookiesTypes = None,
|
520 | 520 | method: MethodTypes = None,
|
521 | 521 | url: URLTypes = None,
|
|
0 commit comments