1 from _typeshed import SupportsItems
2 from typing import IO, Any, Callable, Iterable, List, Mapping, MutableMapping, Optional, Text, Tuple, TypeVar, Union
4 from . import adapters, auth as _auth, compat, cookies, exceptions, hooks, models, status_codes, structures, utils
5 from .models import Response
6 from .packages.urllib3 import _collections
8 _BaseAdapter = adapters.BaseAdapter
9 OrderedDict = compat.OrderedDict
10 cookiejar_from_dict = cookies.cookiejar_from_dict
11 extract_cookies_to_jar = cookies.extract_cookies_to_jar
12 RequestsCookieJar = cookies.RequestsCookieJar
13 merge_cookies = cookies.merge_cookies
14 Request = models.Request
15 PreparedRequest = models.PreparedRequest
16 DEFAULT_REDIRECT_LIMIT = models.DEFAULT_REDIRECT_LIMIT
17 default_hooks = hooks.default_hooks
18 dispatch_hook = hooks.dispatch_hook
19 to_key_val_list = utils.to_key_val_list
20 default_headers = utils.default_headers
21 to_native_string = utils.to_native_string
22 TooManyRedirects = exceptions.TooManyRedirects
23 InvalidSchema = exceptions.InvalidSchema
24 ChunkedEncodingError = exceptions.ChunkedEncodingError
25 ContentDecodingError = exceptions.ContentDecodingError
26 RecentlyUsedContainer = _collections.RecentlyUsedContainer
27 CaseInsensitiveDict = structures.CaseInsensitiveDict
28 HTTPAdapter = adapters.HTTPAdapter
29 requote_uri = utils.requote_uri
30 get_environ_proxies = utils.get_environ_proxies
31 get_netrc_auth = utils.get_netrc_auth
32 should_bypass_proxies = utils.should_bypass_proxies
33 get_auth_from_url = utils.get_auth_from_url
34 codes = status_codes.codes
35 REDIRECT_STATI = models.REDIRECT_STATI
37 def merge_setting(request_setting, session_setting, dict_class=...): ...
38 def merge_hooks(request_hooks, session_hooks, dict_class=...): ...
40 class SessionRedirectMixin:
41 def resolve_redirects(self, resp, req, stream=..., timeout=..., verify=..., cert=..., proxies=...): ...
42 def rebuild_auth(self, prepared_request, response): ...
43 def rebuild_proxies(self, prepared_request, proxies): ...
44 def should_strip_auth(self, old_url, new_url): ...
46 _Data = Union[None, Text, bytes, Mapping[str, Any], Mapping[Text, Any], Iterable[Tuple[Text, Optional[Text]]], IO[Any]]
48 _Hook = Callable[[Response], Any]
49 _Hooks = MutableMapping[Text, List[_Hook]]
50 _HooksInput = MutableMapping[Text, Union[Iterable[_Hook], _Hook]]
52 _ParamsMappingKeyType = Union[Text, bytes, int, float]
53 _ParamsMappingValueType = Union[Text, bytes, int, float, Iterable[Union[Text, bytes, int, float]], None]
55 SupportsItems[_ParamsMappingKeyType, _ParamsMappingValueType],
56 Tuple[_ParamsMappingKeyType, _ParamsMappingValueType],
57 Iterable[Tuple[_ParamsMappingKeyType, _ParamsMappingValueType]],
60 _TextMapping = MutableMapping[Text, Text]
61 _SessionT = TypeVar("_SessionT", bound=Session)
63 class Session(SessionRedirectMixin):
65 headers: CaseInsensitiveDict[Text]
66 auth: None | tuple[Text, Text] | _auth.AuthBase | Callable[[PreparedRequest], PreparedRequest]
71 verify: None | bool | Text
72 cert: None | Text | tuple[Text, Text]
75 cookies: RequestsCookieJar
76 adapters: MutableMapping[Any, Any]
77 redirect_cache: RecentlyUsedContainer[Any, Any]
78 def __init__(self) -> None: ...
79 def __enter__(self: _SessionT) -> _SessionT: ...
80 def __exit__(self, *args) -> None: ...
81 def prepare_request(self, request: Request) -> PreparedRequest: ...
85 url: str | bytes | Text,
86 params: _Params | None = ...,
88 headers: _TextMapping | None = ...,
89 cookies: None | RequestsCookieJar | _TextMapping = ...,
90 files: MutableMapping[Text, IO[Any]]
91 | MutableMapping[Text, tuple[Text, IO[Any]]]
92 | MutableMapping[Text, tuple[Text, IO[Any], Text]]
93 | MutableMapping[Text, tuple[Text, IO[Any], Text, _TextMapping]]
95 auth: None | tuple[Text, Text] | _auth.AuthBase | Callable[[PreparedRequest], PreparedRequest] = ...,
96 timeout: None | float | tuple[float, float] | tuple[float, None] = ...,
97 allow_redirects: bool | None = ...,
98 proxies: _TextMapping | None = ...,
99 hooks: _HooksInput | None = ...,
100 stream: bool | None = ...,
101 verify: None | bool | Text = ...,
102 cert: Text | tuple[Text, Text] | None = ...,
103 json: Any | None = ...,
108 params: _Params | None = ...,
109 data: Any | None = ...,
110 headers: Any | None = ...,
111 cookies: Any | None = ...,
112 files: Any | None = ...,
113 auth: Any | None = ...,
114 timeout: Any | None = ...,
115 allow_redirects: bool = ...,
116 proxies: Any | None = ...,
117 hooks: Any | None = ...,
118 stream: Any | None = ...,
119 verify: Any | None = ...,
120 cert: Any | None = ...,
121 json: Any | None = ...,
126 params: _Params | None = ...,
127 data: Any | None = ...,
128 headers: Any | None = ...,
129 cookies: Any | None = ...,
130 files: Any | None = ...,
131 auth: Any | None = ...,
132 timeout: Any | None = ...,
133 allow_redirects: bool = ...,
134 proxies: Any | None = ...,
135 hooks: Any | None = ...,
136 stream: Any | None = ...,
137 verify: Any | None = ...,
138 cert: Any | None = ...,
139 json: Any | None = ...,
144 params: _Params | None = ...,
145 data: Any | None = ...,
146 headers: Any | None = ...,
147 cookies: Any | None = ...,
148 files: Any | None = ...,
149 auth: Any | None = ...,
150 timeout: Any | None = ...,
151 allow_redirects: bool = ...,
152 proxies: Any | None = ...,
153 hooks: Any | None = ...,
154 stream: Any | None = ...,
155 verify: Any | None = ...,
156 cert: Any | None = ...,
157 json: Any | None = ...,
163 json: Any | None = ...,
164 params: _Params | None = ...,
165 headers: Any | None = ...,
166 cookies: Any | None = ...,
167 files: Any | None = ...,
168 auth: Any | None = ...,
169 timeout: Any | None = ...,
170 allow_redirects: bool = ...,
171 proxies: Any | None = ...,
172 hooks: Any | None = ...,
173 stream: Any | None = ...,
174 verify: Any | None = ...,
175 cert: Any | None = ...,
181 params: _Params | None = ...,
182 headers: Any | None = ...,
183 cookies: Any | None = ...,
184 files: Any | None = ...,
185 auth: Any | None = ...,
186 timeout: Any | None = ...,
187 allow_redirects: bool = ...,
188 proxies: Any | None = ...,
189 hooks: Any | None = ...,
190 stream: Any | None = ...,
191 verify: Any | None = ...,
192 cert: Any | None = ...,
193 json: Any | None = ...,
199 params: _Params | None = ...,
200 headers: Any | None = ...,
201 cookies: Any | None = ...,
202 files: Any | None = ...,
203 auth: Any | None = ...,
204 timeout: Any | None = ...,
205 allow_redirects: bool = ...,
206 proxies: Any | None = ...,
207 hooks: Any | None = ...,
208 stream: Any | None = ...,
209 verify: Any | None = ...,
210 cert: Any | None = ...,
211 json: Any | None = ...,
216 params: _Params | None = ...,
217 data: Any | None = ...,
218 headers: Any | None = ...,
219 cookies: Any | None = ...,
220 files: Any | None = ...,
221 auth: Any | None = ...,
222 timeout: Any | None = ...,
223 allow_redirects: bool = ...,
224 proxies: Any | None = ...,
225 hooks: Any | None = ...,
226 stream: Any | None = ...,
227 verify: Any | None = ...,
228 cert: Any | None = ...,
229 json: Any | None = ...,
232 self, request: PreparedRequest, *, stream=..., verify=..., cert=..., proxies=..., allow_redirects: bool = ..., **kwargs
234 def merge_environment_settings(self, url, proxies, stream, verify, cert): ...
235 def get_adapter(self, url: str) -> _BaseAdapter: ...
236 def close(self) -> None: ...
237 def mount(self, prefix: Text | bytes, adapter: _BaseAdapter) -> None: ...
239 def session() -> Session: ...