Files
wg-backend-django/dell-env/lib/python3.11/site-packages/requests/__pycache__/sessions.cpython-311.pyc

265 lines
29 KiB
Plaintext
Raw Normal View History

2023-10-30 14:40:43 +07:00
<EFBFBD>
w]?e<>v<00><00><><00>dZddlZddlZddlZddlmZddlmZddlm Z ddl
m Z ddl m Z dd lmZmZmZmZdd
lmZmZmZmZdd lmZmZmZmZdd lmZmZdd l m!Z!m"Z"m#Z#m$Z$ddl%m&Z&ddl'm(Z(ddl)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3ej4dkrej5Z6nejZ6efd<12>Z7efd<13>Z8Gd<14>d<15><00>Z9Gd<16>de9<65><00>Z:d<18>Z;dS)z<>
requests.sessions
~~~~~~~~~~~~~~~~~
This module provides a Session object to manage and persist settings across
requests (cookies, auth, proxies).
<EFBFBD>N)<01> OrderedDict)<01> timedelta<74>)<01>to_native_string)<01> HTTPAdapter)<01>_basic_auth_str)<04>Mapping<6E> cookielib<69>urljoin<69>urlparse)<04>RequestsCookieJar<61>cookiejar_from_dict<63>extract_cookies_to_jar<61> merge_cookies)<04>ChunkedEncodingError<6F>ContentDecodingError<6F> InvalidSchema<6D>TooManyRedirects)<02> default_hooks<6B> dispatch_hook)<04>DEFAULT_REDIRECT_LIMIT<49>REDIRECT_STATI<54>PreparedRequest<73>Request)<01>codes)<01>CaseInsensitiveDict)
<EFBFBD> DEFAULT_PORTS<54>default_headers<72>get_auth_from_url<72>get_environ_proxies<65>get_netrc_auth<74> requote_uri<72>resolve_proxies<65> rewind_body<64>should_bypass_proxies<65>to_key_val_list<73>win32c<00>.<00>|<01>|S|<00>|St|t<00><00>rt|t<00><00>s|S|t|<01><00><00><00>}|<03>t|<00><00><00><00>d<02>|<03><00><00>D<00><00>}|D]}||=<00>|S)z<>Determines appropriate setting for a given request, taking into account
the explicit setting on that request, and the setting in the session. If a
setting is a dictionary, they will be merged together using `dict_class`
Nc<00><00>g|] \}}|<02>|<01><02>
S<00>N<>)<03>.0<EFBFBD>k<>vs <20>j/home/infidel/Sync/TIP/WireGuard/ocp-wg-backend/dell-env/lib/python3.11/site-packages/requests/sessions.py<70>
<listcomp>z!merge_setting.<locals>.<listcomp>Ts<00><00>E<>E<>E<>v<EFBFBD><01>1<EFBFBD>1<EFBFBD>9<EFBFBD><11>9<EFBFBD>9<EFBFBD>9<EFBFBD>)<05>
isinstancer r&<00>update<74>items)<06>request_setting<6E>session_setting<6E>
dict_class<EFBFBD>merged_setting<6E> none_keys<79>keys r/<00> merge_settingr;=s<><00><00> <17><1E><1E><1E><16><1E><1E><1E> <13>?<3F>G<EFBFBD>,<2C>,<2C><1F>1;<3B>O<EFBFBD>W<EFBFBD>1U<31>1U<31><1F><1F><1E><1F>Z<EFBFBD><0F><0F> @<40> @<40>A<>A<>N<EFBFBD><12><19><19>/<2F>/<2F>:<3A>:<3A>;<3B>;<3B>;<3B>F<01>E<><1E>!5<>!5<>!7<>!7<>E<>E<>E<>I<EFBFBD><18> <20> <20><03> <1A>3<EFBFBD> <1F> <1F> <19>r1c<00><><00>|<01>|<01>d<02><00>gkr|S|<00>|<00>d<02><00>gkr|St|||<02><00>S)z<>Properly merges both requests and session hooks.
This is necessary because when request_hooks == {'response': []}, the
merge breaks Session hooks entirely.
N<>response)<02>getr;)<03> request_hooks<6B> session_hooksr7s r/<00> merge_hooksrA[s^<00><00> <15><1C> <0A> 1<> 1<>*<2A> =<3D> =<3D><12> C<> C<><1C><1C><14><1C> <0A> 1<> 1<>*<2A> =<3D> =<3D><12> C<> C<><1C><1C> <18><1D> <0A>z<EFBFBD> B<> B<>Br1c<00>@<00>eZdZd<01>Zd<02>Z d
d<06>Zd<07>Zd<08>Zd <09>ZdS) <0B>SessionRedirectMixinc<00>x<00>|jr2|jd}|<02>d<02><00>}t|d<03><00>SdS)z7Receives a Response. Returns a redirect URI or ``None``<60>location<6F>latin1<6E>utf8N)<04> is_redirect<63>headers<72>encoder)<03>self<6C>resprEs r/<00>get_redirect_targetz(SessionRedirectMixin.get_redirect_targetksC<00><00> <10> <1B> 6<><1B>|<7C>J<EFBFBD>/<2F>H<EFBFBD> <20><EFBFBD><EFBFBD>x<EFBFBD>0<>0<>H<EFBFBD>#<23>H<EFBFBD>f<EFBFBD>5<>5<> 5<><13>tr1c<00>b<00>t|<01><00>}t|<02><00>}|j|jkrdS|jdkr|jdvr|jdkr |jdvrdS|j|jk}|j|jk}t j|jd<07><00>df}|s|j|vr |j|vrdS|p|S)zFDecide whether Authorization header should be removed when redirectingT<67>http)<02>PN<>https)i<>NFN)r <00>hostname<6D>scheme<6D>portrr>)rK<00>old_url<72>new_url<72>
old_parsed<EFBFBD>
new_parsed<EFBFBD> changed_port<72>changed_scheme<6D> default_ports r/<00>should_strip_authz&SessionRedirectMixin.should_strip_auths<><00><00><1D>g<EFBFBD>&<26>&<26>
<EFBFBD><1D>g<EFBFBD>&<26>&<26>
<EFBFBD> <15> <1E>*<2A>"5<> 5<> 5<><17>4<EFBFBD> <17> <1D><16> '<27> '<27><1A><0F>:<3A>-<2D>-<2D><1A>!<21>W<EFBFBD>,<2C>,<2C><1A><0F>;<3B>.<2E>.<2E><18>5<EFBFBD>"<22><EFBFBD>*<2A>/<2F>9<> <0C>#<23>*<2A>j<EFBFBD>.?<3F>?<3F><0E>%<25>)<29>*<2A>*;<3B>T<EFBFBD>B<>B<>D<EFBFBD>I<> <0C><1E> <19><1A><0F><<3C>/<2F>/<2F><1A><0F><<3C>/<2F>/<2F><18>5<EFBFBD><1C>-<2D>~<7E>-r1FNTc
+<00><>K<00>g}
|<00>|<01><00>} t|j<00><00>j} | <0B>r'|<02><00><00>} |
<EFBFBD>|<01><00>|
dd<02>|_ |jn8#tttf$r|j <00> d<03><04><00>YnwxYwt|j<00><00>|jkrtd|j<00>d<06>|<01><07><00><00>|<01><00><00>| <0B>d<08><00>r=t|j<00><00>}d <09>t'|j<00><00>| g<02><00>} t| <0B><00>}|jd
kr| r|<0F>| <0C> <0B><00>}n|jr|j} |<0F><00><00>} |js#t1|jt3| <0B><00><00><00>} nt3| <0B><00>} t'| <0B><00>| _|<00>| |<01><00>|jt8jt8jfvr)d }|D]}| j<00> |d<02><00><00>d| _!| j}|<12> d d<02><00>tE| j#||j <00><00>tI| j#|j%<00><00>| <0A>&| j#<00><00>|<00>'| |<07><00>}|<00>(| |<01><00>| j)duod|vpd|v}|rtU| <0A><00>| }|r|V<00>nI|j+|f|||||dd<10>| <09><01>}tE|j%| |j <00><00>|<00>|<01><00>} |V<00>| <0B><03>%dSdS)zBReceives a Response. Returns a generator of Responses or Requests.rNF)<01>decode_contentz Exceeded z redirects.)r=z//<2F>:<3A>)<01>fragment)<03>Content-Lengthz Content-Type<70>Transfer-Encoding<6E>Cookierbrc)<06>stream<61>timeout<75>verify<66>cert<72>proxies<65>allow_redirects),rMr <00>urlra<00>copy<70>append<6E>history<72>contentrr<00> RuntimeError<6F>raw<61>read<61>len<65> max_redirectsr<00>close<73>
startswith<EFBFBD>joinrrS<00>_replace<63>geturl<72>netlocr r"<00>rebuild_method<6F> status_coder<00>temporary_redirect<63>permanent_redirectrI<00>pop<6F>bodyr<00>_cookiesr<00>cookies<65>prepare_cookies<65>rebuild_proxies<65> rebuild_auth<74>_body_positionr$<00>send)rKrL<00>reqrerfrgrhri<00>yield_requests<74>adapter_kwargs<67>histrk<00>previous_fragment<6E>prepared_request<73> parsed_rurl<72>parsed<65>purged_headers<72>headerrI<00>
rewindables r/<00>resolve_redirectsz&SessionRedirectMixin.resolve_redirects<74>s<><00><00><00><00><12><04><12>&<26>&<26>t<EFBFBD>,<2C>,<2C><03>$<24>S<EFBFBD>W<EFBFBD>-<2D>-<2D>6<><19><11>h <1B>"<22>x<EFBFBD>x<EFBFBD>z<EFBFBD>z<EFBFBD> <1C> <11>K<EFBFBD>K<EFBFBD><04> <1D> <1D> <1D><1F><01><02><02>8<EFBFBD>D<EFBFBD>L<EFBFBD> 4<><14> <0C> <0C> <0C><>(<28>*><3E> <0C>M<> 4<> 4<> 4<><14><08> <0A> <0A>U<EFBFBD> <0A>3<>3<>3<>3<>3<> 4<><34><EFBFBD><EFBFBD><13>4<EFBFBD><<3C> <20> <20>D<EFBFBD>$6<>6<>6<>&<26>?<3F><04> 2<>?<3F>?<3F>?<3F>$<24><12><12><12><12>
<11>J<EFBFBD>J<EFBFBD>L<EFBFBD>L<EFBFBD>L<EFBFBD><13>~<7E>~<7E>d<EFBFBD>#<23>#<23> L<01>&<26>t<EFBFBD>x<EFBFBD>0<>0<> <0B><19>h<EFBFBD>h<EFBFBD> 0<><1B>1C<31> D<> D<>c<EFBFBD>J<>K<>K<><03><1E>c<EFBFBD>]<5D>]<5D>F<EFBFBD><15><EFBFBD>"<22>$<24>$<24>):<3A>$<24><1F><1F><1F>2C<32><1F>D<>D<><06><06><17><1F> 4<>$*<2A>O<EFBFBD>!<21><18>-<2D>-<2D>/<2F>/<2F>C<EFBFBD>
<1A>=<3D> '<27><1D>d<EFBFBD>h<EFBFBD> <0B>C<EFBFBD>(8<>(8<>9<>9<><03><03>!<21>#<23>&<26>&<26><03>#3<>C<EFBFBD>#8<>#8<> <1C> <20> <10> <1F> <1F> 0<>$<24> 7<> 7<> 7<><14><1F><15>(<28><15>(<28>(<0E><0E><0E>
"Y<01><0E>,<2C>?<3F>?<3F>F<EFBFBD>$<24>,<2C>0<>0<><16><14>><3E>><3E>><3E>><3E>(,<2C> <20>%<25>&<26>.<2E>G<EFBFBD> <13>K<EFBFBD>K<EFBFBD><08>$<24> '<27> '<27> '<27>
#<23>#3<>#<<3C>c<EFBFBD>4<EFBFBD>8<EFBFBD> L<> L<> L<> <19>*<2A>3<>T<EFBFBD>\<5C> B<> B<> B<> <1C> ,<2C> ,<2C>-=<3D>-F<> G<> G<> G<><1B>*<2A>*<2A>+;<3B>W<EFBFBD>E<>E<>G<EFBFBD> <10> <1D> <1D>.<2E><04> 5<> 5<> 5<>
*<2A>8<><04>D<><0E> <20>G<EFBFBD>+<2B>M<>/B<>g<EFBFBD>/M<> <17>
<1A> .<2E><1B>,<2C>-<2D>-<2D>-<2D>#<23>C<EFBFBD><1D> <1B><19> <09> <09> <09> <09>!<21>t<EFBFBD>y<EFBFBD><17> <12>!<21>#<23>!<21><1D>#<23>$)<29> <12> <12>%<25> <12> <12><04>'<27>t<EFBFBD>|<7C>5E<35>t<EFBFBD>x<EFBFBD>P<>P<>P<><1B>.<2E>.<2E>t<EFBFBD>4<>4<><03><1A>
<EFBFBD>
<EFBFBD>
<EFBFBD>Q<12>h <1B>h <1B>h <1B>h <1B>h s<00>/A7<00>72B,<03>+B,c<00><><00>|j}|j}d|vr#|<00>|jj|<04><00>r|d=|jrt |<04><00>nd}|<05>|<01>|<05><00>dSdS)z<>When being redirected we may want to strip authentication from the
request to avoid leaking credentials. This method intelligently removes
and reapplies authentication where possible to avoid credential loss.
<20> AuthorizationN)rIrkr\<00>request<73> trust_envr!<00> prepare_auth)rKr<>r=rIrk<00>new_auths r/r<>z!SessionRedirectMixin.rebuild_auths<><00><00>
#<23>*<2A><07><1E>"<22><03> <1A>g<EFBFBD> %<25> %<25>$<24>*@<40>*@<40> <14> <1C> <20>#<23>+
<EFBFBD>+
<EFBFBD> %<25>
<18><0F>(<28>+/<2F>.<2E>B<>><3E>#<23>&<26>&<26>&<26>d<EFBFBD><08> <13> <1F> <1C> )<29> )<29>(<28> 3<> 3<> 3<> 3<> 3<> <20> r1c<00>6<00>|j}t|j<00><00>j}t |||j<00><00>}d|vr|d= t ||<00><00>\}}n#t$rd\}}YnwxYw|<04>d<03><00>s|r|rt||<07><00>|d<|S)a<>This method re-evaluates the proxy configuration by considering the
environment variables. If we are redirected to a URL covered by
NO_PROXY, we strip the proxy configuration. Otherwise, we set missing
proxy keys for this URL (in case they were stripped by a previous
redirect).
This method also replaces the Proxy-Authorization header where
necessary.
:rtype: dict
zProxy-Authorization<6F>NNrQ)
rIr rkrSr#r<>r<00>KeyErrorrvr)rKr<>rirIrS<00> new_proxies<65>username<6D>passwords r/r<>z$SessionRedirectMixin.rebuild_proxies/s<><00><00>#<23>*<2A><07><19>*<2A>.<2E>/<2F>/<2F>6<><06>%<25>&6<><07><14><1E>P<>P<> <0B> <20>G<EFBFBD> +<2B> +<2B><17>-<2D>.<2E> ,<2C>!2<>;<3B>v<EFBFBD>3F<33>!G<>!G<> <1E>H<EFBFBD>h<EFBFBD>h<EFBFBD><68><17> ,<2C> ,<2C> ,<2C>!+<2B> <1E>H<EFBFBD>h<EFBFBD>h<EFBFBD>h<EFBFBD> ,<2C><><EFBFBD><EFBFBD>
<16> <20> <20><17>)<29>)<29> Q<01>h<EFBFBD> Q<01>8<EFBFBD> Q<01>-<<3C>X<EFBFBD>x<EFBFBD>-P<>-P<>G<EFBFBD>)<29> *<2A><1A>s<00>A<00>A*<03>)A*c<00><><00>|j}|jtjkr|dkrd}|jtjkr|dkrd}|jtjkr|dkrd}||_dS)z<>When being redirected we may want to change the method of the request
based on certain specs or browser behavior.
<20>HEAD<41>GET<45>POSTN)<06>methodr|r<00> see_other<65>found<6E>moved)rKr<>r=r<>s r/r{z#SessionRedirectMixin.rebuild_methodNs~<00><00>"<22>(<28><06> <14> <1F>5<EFBFBD>?<3F> 2<> 2<>v<EFBFBD><16>7G<37>7G<37><1A>F<EFBFBD> <14> <1F>5<EFBFBD>;<3B> .<2E> .<2E>6<EFBFBD>V<EFBFBD>3C<33>3C<33><1A>F<EFBFBD> <14> <1F>5<EFBFBD>;<3B> .<2E> .<2E>6<EFBFBD>V<EFBFBD>3C<33>3C<33><1A>F<EFBFBD>"(<28><18><1F><1F>r1)FNTNNF) <09>__name__<5F>
__module__<EFBFBD> __qualname__rMr\r<>r<>r<>r{r+r1r/rCrCjs<><00><00><00><00><00><00><14><14><14>(.<2E>.<2E>.<2E>H<15><14><13> <11><14><1C>z<1B>z<1B>z<1B>z<1B>x4<>4<>4<>(<1B><1B><1B>>)<29>)<29>)<29>)<29>)r1rCc<00><><00>eZdZdZgd<02>Zd<03>Zd<04>Zd<05>Zd<06>Z dd <09>Z d
<EFBFBD>Z
d <0B>Z d <0C>Z dd <0A>Z dd<0E>Zdd<0F>Zd<10>Zd<11>Zd<12>Zd<13>Zd<14>Zd<15>Zd<16>Zd<17>ZdS)<1B>Sessiona<6E>A Requests session.
Provides cookie persistence, connection-pooling, and configuration.
Basic Usage::
>>> import requests
>>> s = requests.Session()
>>> s.get('https://httpbin.org/get')
<Response [200]>
Or as a context manager::
>>> with requests.Session() as s:
... s.get('https://httpbin.org/get')
<Response [200]>
) rIr<><00>authri<00>hooks<6B>paramsrgrh<00>adaptersrer<>rtc<00><><00>t<00><00>|_d|_i|_t <00><00>|_i|_d|_d|_d|_ t|_ d|_ ti<00><00>|_t<00><00>|_|<00>dt%<00><00><00><00>|<00>dt%<00><00><00><00>dS)NFTzhttps://zhttp://)rrIr<>rirr<>r<>rergrhrrtr<>rr<>rr<><00>mountr<00>rKs r/<00>__init__zSession.__init__<5F>s<><00><00>
'<27>(<28>(<28><04> <0C><19><04> <09>
<1A><04> <0C>#<23>_<EFBFBD>_<EFBFBD><04>
<EFBFBD>
<19><04> <0B><1C><04> <0B><1B><04> <0B><19><04> <09> 4<><04><1A><1E><04><0E> +<2B>2<EFBFBD>.<2E>.<2E><04> <0C>$<24> <0A> <0A><04> <0A> <0C>
<EFBFBD>
<EFBFBD>:<3A>{<7B>}<7D>}<7D>-<2D>-<2D>-<2D> <0C>
<EFBFBD>
<EFBFBD>9<EFBFBD>k<EFBFBD>m<EFBFBD>m<EFBFBD>,<2C>,<2C>,<2C>,<2C>,r1c<00><00>|Sr*r+r<>s r/<00> __enter__zSession.__enter__<5F>s<00><00><13> r1c<00>.<00>|<00><00><00>dSr*)ru)rK<00>argss r/<00>__exit__zSession.__exit__<5F>s<00><00> <0C>
<EFBFBD>
<EFBFBD> <0C> <0C> <0C> <0C> r1c<00><><00>|jpi}t|tj<00><00>st |<02><00>}t t t <00><00>|j<00><00>|<02><00>}|j}|jr|s|jst|j
<00><00>}t<00><00>}|<05> |j <00><00><00>|j
|j|j|jt%|j|jt(<00><01><00>t%|j|j<00><00>t%||j<00><00>|t-|j|j<00><00><00><02>
<00>
|S)a<>Constructs a :class:`PreparedRequest <PreparedRequest>` for
transmission and returns it. The :class:`PreparedRequest` has settings
merged from the :class:`Request <Request>` instance and those of the
:class:`Session`.
:param request: :class:`Request` instance to prepare with this
session's settings.
:rtype: requests.PreparedRequest
)r7)
r<EFBFBD>rk<00>files<65>data<74>jsonrIr<>r<>r<>r<>)r<>r2r
<00> CookieJarrrr r<>r<>r!rkr<00>preparer<65><00>upperr<72>r<>r<>r;rIrr<>rAr<>)rKr<>r<><00>merged_cookiesr<73><00>ps r/<00>prepare_requestzSession.prepare_request<73>s5<00><00><1A>/<2F>'<27>R<EFBFBD><07><1A>'<27>9<EFBFBD>#6<>7<>7<> 3<>)<29>'<27>2<>2<>G<EFBFBD>'<27> <19>+<2B>-<2D>-<2D>t<EFBFBD>|<7C> <<3C> <<3C>g<EFBFBD>
<EFBFBD>
<EFBFBD><0E>
<17>|<7C><04> <0F>><3E> /<2F>$<24> /<2F>t<EFBFBD>y<EFBFBD> /<2F>!<21>'<27>+<2B>.<2E>.<2E>D<EFBFBD> <1B> <1D> <1D><01> <09> <09> <09><1A>><3E>'<27>'<27>)<29>)<29><17> <0B><19>-<2D><18><1C><18><1C>!<21><17><0F><14><1C>:M<><0E><0E><0E>!<21><17><1E><14><1B>=<3D>=<3D><1E>t<EFBFBD>T<EFBFBD>Y<EFBFBD>/<2F>/<2F>"<22><1D>g<EFBFBD>m<EFBFBD>T<EFBFBD>Z<EFBFBD>8<>8<> <12>
<EFBFBD>
<EFBFBD>
<EFBFBD><11>r1NTc <00>"<00>t|<01><00><00>||||pi||pi||| <0C><01>
<00>
}|<00>|<11><00>}| pi} |<00>|j| | ||<0F><00>}| |
d<02>}|<14>|<13><00>|j|fi|<14><01>}|S)aw Constructs a :class:`Request <Request>`, prepares it and sends it.
Returns :class:`Response <Response>` object.
:param method: method for the new :class:`Request` object.
:param url: URL for the new :class:`Request` object.
:param params: (optional) Dictionary or bytes to be sent in the query
string for the :class:`Request`.
:param data: (optional) Dictionary, list of tuples, bytes, or file-like
object to send in the body of the :class:`Request`.
:param json: (optional) json to send in the body of the
:class:`Request`.
:param headers: (optional) Dictionary of HTTP Headers to send with the
:class:`Request`.
:param cookies: (optional) Dict or CookieJar object to send with the
:class:`Request`.
:param files: (optional) Dictionary of ``'filename': file-like-objects``
for multipart encoding upload.
:param auth: (optional) Auth tuple or callable to enable
Basic/Digest/Custom HTTP Auth.
:param timeout: (optional) How long to wait for the server to send
data before giving up, as a float, or a :ref:`(connect timeout,
read timeout) <timeouts>` tuple.
:type timeout: float or tuple
:param allow_redirects: (optional) Set to True by default.
:type allow_redirects: bool
:param proxies: (optional) Dictionary mapping protocol or protocol and
hostname to the URL of the proxy.
:param stream: (optional) whether to immediately download the response
content. Defaults to ``False``.
:param verify: (optional) Either a boolean, in which case it controls whether we verify
the server's TLS certificate, or a string, in which case it must be a path
to a CA bundle to use. Defaults to ``True``. When set to
``False``, requests will accept any TLS certificate presented by
the server, and will ignore hostname mismatches and/or expired
certificates, which will make your application vulnerable to
man-in-the-middle (MitM) attacks. Setting verify to ``False``
may be useful during local development or testing.
:param cert: (optional) if String, path to ssl client cert file (.pem).
If Tuple, ('cert', 'key') pair.
:rtype: requests.Response
)
r<EFBFBD>rkrIr<>r<>r<>r<>r<>r<>r<>)rfrj)rr<>r<><00>merge_environment_settingsrkr3r<>)rKr<>rkr<>r<>rIr<>r<>r<>rfrjrir<>rergrhr<>r<><00>prep<65>settings<67> send_kwargsrLs r/r<>zSession.request<73>s<><00><00>z<16><19><<3C><<3C>><3E>><3E><13><1B><17><15><1A><12><15><19><<3C>R<EFBFBD><15><1B><17> 
<EFBFBD> 
<EFBFBD> 
<EFBFBD><03><14>#<23>#<23>C<EFBFBD>(<28>(<28><04><19>-<2D>R<EFBFBD><07><17>2<>2<> <10>H<EFBFBD>g<EFBFBD>v<EFBFBD>v<EFBFBD>t<EFBFBD>
<EFBFBD>
<EFBFBD><08> <1F>.<2E>
<EFBFBD>
<EFBFBD> <0B> <14><1A><1A>8<EFBFBD>$<24>$<24>$<24><18>t<EFBFBD>y<EFBFBD><14>-<2D>-<2D><1B>-<2D>-<2D><04><13> r1c <00>L<00>|<02>dd<02><00>|jd|fi|<02><01>S)z<>Sends a GET request. Returns :class:`Response` object.
:param url: URL for the new :class:`Request` object.
:param \*\*kwargs: Optional arguments that ``request`` takes.
:rtype: requests.Response
rjTr<54><00><02>
setdefaultr<EFBFBD><00>rKrk<00>kwargss r/r>z Session.getQs7<00><00> <0F><19><19>+<2B>T<EFBFBD>2<>2<>2<><1B>t<EFBFBD>|<7C>E<EFBFBD>3<EFBFBD>1<>1<>&<26>1<>1<>1r1c <00>L<00>|<02>dd<02><00>|jd|fi|<02><01>S)z<>Sends a OPTIONS request. Returns :class:`Response` object.
:param url: URL for the new :class:`Request` object.
:param \*\*kwargs: Optional arguments that ``request`` takes.
:rtype: requests.Response
rjT<>OPTIONSr<53>r<>s r/<00>optionszSession.options\s7<00><00> <0F><19><19>+<2B>T<EFBFBD>2<>2<>2<><1B>t<EFBFBD>|<7C>I<EFBFBD>s<EFBFBD>5<>5<>f<EFBFBD>5<>5<>5r1c <00>L<00>|<02>dd<02><00>|jd|fi|<02><01>S)z<>Sends a HEAD request. Returns :class:`Response` object.
:param url: URL for the new :class:`Request` object.
:param \*\*kwargs: Optional arguments that ``request`` takes.
:rtype: requests.Response
rjFr<46>r<>r<>s r/<00>headz Session.headgs7<00><00> <0F><19><19>+<2B>U<EFBFBD>3<>3<>3<><1B>t<EFBFBD>|<7C>F<EFBFBD>C<EFBFBD>2<>2<>6<EFBFBD>2<>2<>2r1c <00>&<00>|jd|f||d<02>|<04><01>S)a<>Sends a POST request. Returns :class:`Response` object.
:param url: URL for the new :class:`Request` object.
:param data: (optional) Dictionary, list of tuples, bytes, or file-like
object to send in the body of the :class:`Request`.
:param json: (optional) json to send in the body of the :class:`Request`.
:param \*\*kwargs: Optional arguments that ``request`` takes.
:rtype: requests.Response
r<>)r<>r<><00>r<>)rKrkr<>r<>r<>s r/<00>postz Session.postrs'<00><00><1C>t<EFBFBD>|<7C>F<EFBFBD>C<EFBFBD>H<>d<EFBFBD><14>H<>H<><16>H<>H<>Hr1c <00>$<00>|jd|fd|i|<03><01>S)auSends a PUT request. Returns :class:`Response` object.
:param url: URL for the new :class:`Request` object.
:param data: (optional) Dictionary, list of tuples, bytes, or file-like
object to send in the body of the :class:`Request`.
:param \*\*kwargs: Optional arguments that ``request`` takes.
:rtype: requests.Response
<20>PUTr<54>r<><00>rKrkr<>r<>s r/<00>putz Session.puts%<00><00><1C>t<EFBFBD>|<7C>E<EFBFBD>3<EFBFBD><<3C><<3C>T<EFBFBD><<3C>V<EFBFBD><<3C><<3C><r1c <00>$<00>|jd|fd|i|<03><01>S)awSends a PATCH request. Returns :class:`Response` object.
:param url: URL for the new :class:`Request` object.
:param data: (optional) Dictionary, list of tuples, bytes, or file-like
object to send in the body of the :class:`Request`.
:param \*\*kwargs: Optional arguments that ``request`` takes.
:rtype: requests.Response
<20>PATCHr<48>r<>r<>s r/<00>patchz Session.patch<63>s%<00><00><1C>t<EFBFBD>|<7C>G<EFBFBD>S<EFBFBD>><3E>><3E>t<EFBFBD>><3E>v<EFBFBD>><3E>><3E>>r1c <00> <00>|jd|fi|<02><01>S)z<>Sends a DELETE request. Returns :class:`Response` object.
:param url: URL for the new :class:`Request` object.
:param \*\*kwargs: Optional arguments that ``request`` takes.
:rtype: requests.Response
<20>DELETEr<45>r<>s r/<00>deletezSession.delete<74>s <00><00><1C>t<EFBFBD>|<7C>H<EFBFBD>c<EFBFBD>4<>4<>V<EFBFBD>4<>4<>4r1c <00>.<00>|<02>d|j<00><00>|<02>d|j<00><00>|<02>d|j<00><00>d|vrt ||j|j<00><00>|d<t|t<00><00>rtd<05><00><00>|<02>
dd<07><00>}|<02> d<01><00>}|j }|<00> |j<00><08><00>}t<00><00>}|j|fi|<02><01>}t<00><00>|z
} t#| <09> <09><00>|_t'd
||fi|<02><01>}|jr*|jD]"}
t+|j|
j|
j<00><00><00>#t+|j||j<00><00>|r|j||fi|<02><01>} d <0B>| D<00><00>} ng} | r1| <0C>d |<08><00>| <0C>
<00><00>}| |_|s5 t7|j||fd di|<02><01><01><00>|_n#t:$rYnwxYw|s|j|S)zISend a given PreparedRequest.
:rtype: requests.Response
rergrhriz#You can only send PreparedRequests.rjT)rk)<01>secondsr=c<00><00>g|]}|<01><02>Sr+r+)r,rLs r/r0z Session.send.<locals>.<listcomp><3E>s<00><00>,<2C>,<2C>,<2C><04>t<EFBFBD>,<2C>,<2C>,r1rr<>)r<>rergrhr#rir<>r2r<00>
ValueErrorrr>r<><00> get_adapterrk<00>preferred_clockr<6B>r<00>elapsedrrnrr<>r<>rqr<><00>insert<72>next<78>_next<78> StopIterationro) rKr<>r<>rjrer<><00>adapter<65>start<72>rr<72>rL<00>genrns r/r<>z Session.send<6E>s<><00><00> <0F><19><19>(<28>D<EFBFBD>K<EFBFBD>0<>0<>0<><0E><19><19>(<28>D<EFBFBD>K<EFBFBD>0<>0<>0<><0E><19><19>&<26>$<24>)<29>,<2C>,<2C>,<2C> <14>F<EFBFBD> "<22> "<22> /<2F><07><14><1C>t<EFBFBD>~<7E> V<> V<>F<EFBFBD>9<EFBFBD> <1D> <16>g<EFBFBD>w<EFBFBD> '<27> '<27> D<01><1C>B<>C<>C<> C<>!<21>*<2A>*<2A>%6<><04>=<3D>=<3D><0F><17><1A><1A>H<EFBFBD>%<25>%<25><06><17> <0A><05><17>"<22>"<22>w<EFBFBD>{<7B>"<22>3<>3<><07> <20>!<21>!<21><05> <19>G<EFBFBD>L<EFBFBD><17> +<2B> +<2B>F<EFBFBD> +<2B> +<2B><01>"<22>#<23>#<23>e<EFBFBD>+<2B><07><1D>g<EFBFBD>.<2E>.<2E>.<2E><01> <09> <1A>*<2A>e<EFBFBD>Q<EFBFBD> 9<> 9<>&<26> 9<> 9<><01> <0A>9<EFBFBD> M<01><1A> <09> M<01> M<01><04>&<26>t<EFBFBD>|<7C>T<EFBFBD>\<5C>4<EFBFBD>8<EFBFBD>L<>L<>L<>L<><1E>t<EFBFBD>|<7C>W<EFBFBD>a<EFBFBD>e<EFBFBD><<3C><<3C><<3C> <1B> <19>(<28>$<24>(<28><11>G<EFBFBD>><3E>><3E>v<EFBFBD>><3E>><3E>C<EFBFBD>,<2C>,<2C><03>,<2C>,<2C>,<2C>G<EFBFBD>G<EFBFBD><18>G<EFBFBD> <13> <20> <13>N<EFBFBD>N<EFBFBD>1<EFBFBD>a<EFBFBD> <20> <20> <20><17> <0B> <0B> <0A> <0A>A<EFBFBD><1F>A<EFBFBD>I<EFBFBD><1F> <15> <15><1E>*<2A>D<EFBFBD>*<2A>1<EFBFBD>g<EFBFBD>U<>U<>d<EFBFBD>U<>f<EFBFBD>U<>U<><12><12><01><07><07><>!<21> <15> <15> <15><14><04> <15><><EFBFBD><EFBFBD><16> <16> <0A>I<EFBFBD>I<EFBFBD><10>s<00>#G<<00><
H <03>H c<00><00>|jr<>|<02>|<02>d<02><00>nd}t||<06><03><00>}|<07><00><00>D]\}} |<02>|| <09><00><00>|dus|<04>@t
j<00>d<05><00>p t
j<00>d<06><00>p|}t||j<00><00>}t||j <00><00>}t||j
<00><00>}t||j <00><00>}||||d<07>S)z^
Check the environment and merge it with some settings.
:rtype: dict
N<>no_proxy)r<>T<>REQUESTS_CA_BUNDLE<4C>CURL_CA_BUNDLE)rirergrh) r<>r>r r4r<><00>os<6F>environr;rirergrh)
rKrkrirergrhr<><00> env_proxiesr-r.s
r/r<>z"Session.merge_environment_settings<67>s<00><00> <10>><3E> <12>29<32>2E<32>w<EFBFBD>{<7B>{<7B>:<3A>.<2E>.<2E>.<2E>4<EFBFBD>H<EFBFBD>-<2D>c<EFBFBD>H<EFBFBD>E<>E<>E<>K<EFBFBD>%<25>+<2B>+<2B>-<2D>-<2D> )<29> )<29><06><11>A<EFBFBD><17>"<22>"<22>1<EFBFBD>a<EFBFBD>(<28>(<28>(<28>(<28><16><14>~<7E>~<7E><16><1E><16>J<EFBFBD>N<EFBFBD>N<EFBFBD>#7<>8<>8<><1E><19>z<EFBFBD>~<7E>~<7E>&6<>7<>7<><1E><1D><17> <20><07><14><1C>6<>6<><07><1E>v<EFBFBD>t<EFBFBD>{<7B>3<>3<><06><1E>v<EFBFBD>t<EFBFBD>{<7B>3<>3<><06><1C>T<EFBFBD>4<EFBFBD>9<EFBFBD>-<2D>-<2D><04>"<22>f<EFBFBD><06>PT<50>U<>U<>Ur1c<00><><00>|j<00><00><00>D]B\}}|<01><00><00><00>|<02><00><00><00><00>r|cS<00>Ct d|<01><02><02><00><00>)z~
Returns the appropriate connection adapter for the given URL.
:rtype: requests.adapters.BaseAdapter
z&No connection adapters were found for )r<>r4<00>lowerrvr)rKrk<00>prefixr<78>s r/r<>zSession.get_adapterss<00><00> "&<26><1D>!4<>!4<>!6<>!6<> <1F> <1F> <1D>V<EFBFBD>W<EFBFBD><12>y<EFBFBD>y<EFBFBD>{<7B>{<7B>%<25>%<25>f<EFBFBD>l<EFBFBD>l<EFBFBD>n<EFBFBD>n<EFBFBD>5<>5<> <1F><1E><0E><0E><0E> <1F><1C>L<>S<EFBFBD>L<>L<>M<>M<>Mr1c<00>f<00>|j<00><00><00>D]}|<01><00><00><00>dS)z+Closes all adapters and as such the sessionN)r<><00>valuesru)rKr.s r/ruz Session.closes8<00><00><15><1D>%<25>%<25>'<27>'<27> <16> <16>A<EFBFBD> <0A>G<EFBFBD>G<EFBFBD>I<EFBFBD>I<EFBFBD>I<EFBFBD>I<EFBFBD> <16> r1c<00><><00><01>||j<00><<00>fd<01>|jD<00><00>}|D]$}|j<00>|<04><00>|j|<<00>%dS)zwRegisters a connection adapter to a prefix.
Adapters are sorted in descending order by prefix length.
c<00>T<00><01>g|]$}t|<01><00>t<00><02><00>k<00>"|<01><02>%Sr+)rs)r,r-r<>s <20>r/r0z!Session.mount.<locals>.<listcomp>'s/<00><><00>I<>I<>I<>a<EFBFBD>C<EFBFBD><01>F<EFBFBD>F<EFBFBD>S<EFBFBD><16>[<5B>[<5B>4H<34>4H<34><01>4H<34>4H<34>4Hr1N)r<>r)rKr<>r<><00> keys_to_mover:s ` r/r<>z Session.mount!sd<00><><00>
!(<28><04> <0A>f<EFBFBD><1D>I<>I<>I<>I<>4<EFBFBD>=<3D>I<>I<>I<> <0C><1F> 8<> 8<>C<EFBFBD>!%<25><1D>!2<>!2<>3<EFBFBD>!7<>!7<>D<EFBFBD>M<EFBFBD>#<23> <1E> <1E> 8<> 8r1c<00>.<00><00><00>fd<01><08>jD<00><00>}|S)Nc<00>4<00><01>i|]}|t<00>|d<00><00><00><02>Sr*)<01>getattr)r,<00>attrrKs <20>r/<00>
<dictcomp>z(Session.__getstate__.<locals>.<dictcomp>-s'<00><><00>L<>L<>L<>T<EFBFBD><14>w<EFBFBD>t<EFBFBD>T<EFBFBD>4<EFBFBD>0<>0<>L<>L<>Lr1)<01> __attrs__)rK<00>states` r/<00> __getstate__zSession.__getstate__,s#<00><><00>L<>L<>L<>L<>T<EFBFBD>^<5E>L<>L<>L<><05><14> r1c<00>\<00>|<01><00><00>D]\}}t|||<03><00><00>dSr*)r4<00>setattr)rKrr<00>values r/<00> __setstate__zSession.__setstate__0s<<00><00> <20>;<3B>;<3B>=<3D>=<3D> '<27> '<27>K<EFBFBD>D<EFBFBD>%<25> <13>D<EFBFBD>$<24><05> &<26> &<26> &<26> &<26> '<27> 'r1)NNNNNNNTNNNNNNr<4E>r*)r<>r<>r<><00>__doc__rr<>r<>r<>r<>r<>r>r<>r<>r<>r<>r<>r<>r<>r<>r<>rur<>rr r+r1r/r<>r<>es<><00><00><00><00><00><00><08><08>$ <06> <06> <06>I<EFBFBD><-<2D><-<2D><-<2D>|<14><14><14><15><15><15>)<11>)<11>)<11>^<14> <11><14><14><12> <11><14><1C><14><12><13><13> <11> <11>#Y<14>Y<14>Y<14>Y<14>v 2<> 2<> 2<> 6<> 6<> 6<> 3<> 3<> 3<> I<01> I<01> I<01> I<01>
=<3D>
=<3D>
=<3D>
=<3D>
?<3F>
?<3F>
?<3F>
?<3F>5<>5<>5<>L<11>L<11>L<11>\V<01>V<01>V<01>> N<01> N<01> N<01><16><16><16>
8<> 8<> 8<><15><15><15>'<27>'<27>'<27>'<27>'r1r<>c<00><00>t<00><00>S)aZ
Returns a :class:`Session` for context-management.
.. deprecated:: 1.0.0
This method has been deprecated since version 1.0.0 and is only kept for
backwards compatibility. New code should use :class:`~requests.sessions.Session`
to create a session. This may be removed at a future date.
:rtype: Session
)r<>r+r1r/<00>sessionr 5s<00><00> <13>9<EFBFBD>9<EFBFBD>r1)<r
r<><00>sys<79>time<6D> collectionsr<00>datetimer<00>_internal_utilsrr<>rr<>r<00>compatr r
r r r<>r rrr<00>
exceptionsrrrrr<>rr<00>modelsrrrr<00> status_codesr<00>
structuresr<00>utilsrrrr r!r"r#r$r%r&<00>platform<72> perf_counterr<72>r;rArCr<>r r+r1r/<00><module>rs<><00><01><04><04>
<EFBFBD> <09> <09> <09>
<EFBFBD>
<EFBFBD>
<EFBFBD>
<EFBFBD> <0B> <0B> <0B> <0B>#<23>#<23>#<23>#<23>#<23>#<23><1E><1E><1E><1E><1E><1E>-<2D>-<2D>-<2D>-<2D>-<2D>-<2D>!<21>!<21>!<21>!<21>!<21>!<21>!<21>!<21>!<21>!<21>!<21>!<21>9<>9<>9<>9<>9<>9<>9<>9<>9<>9<>9<>9<><02><02><02><02><02><02><02><02><02><02><02><02> <02><02><02><02><02><02><02><02><02><02><02><02> 0<>/<2F>/<2F>/<2F>/<2F>/<2F>/<2F>/<2F><02><02><02><02><02><02><02><02><02><02><02><02>  <20><1F><1F><1F><1F><1F>+<2B>+<2B>+<2B>+<2B>+<2B>+<2B> <02> <02> <02> <02> <02> <02> <02> <02> <02> <02> <02> <02> <02> <02> <02> <02> <02> <02> <02> <02> <02> <02> <02> <02><07><<3C>7<EFBFBD><1A><1A><1A>'<27>O<EFBFBD>O<EFBFBD><1A>i<EFBFBD>O<EFBFBD>@K<01><1A><1A><1A><1A><:E<01> C<01> C<01> C<01> C<01>x)<29>x)<29>x)<29>x)<29>x)<29>x)<29>x)<29>x)<29>vM'<27>M'<27>M'<27>M'<27>M'<27>"<22>M'<27>M'<27>M'<27>` <15> <15> <15> <15> r1