5,jC dZddlmZddlZddlZddlZddlZddlmZddlm Z ddl m Z ddl m Z dd lmZdd lmZmZmZdd lmZmZdd lmZmZmZdd lmZmZddlmZddl m!Z!ddl"m#Z# ddl$Z$e$j%&ds ej'de$j%de j(n+e$j)dkre*de$j%dn #e*$rYnwxYwdZ+dZ,eZdZ-ej.e/0eej1fd?dZ2[ej3de j4d ej3d!e j5d e j6fd@d%Z7eZ8dddddddd&dd' dAd<Z9ej:d=krdd>l;mr?Retry | bool | int | Noner@Timeout | float | int | NonerAtyping.Any | Nonerc Lt|||||||||| |  S)a A convenience, top-level request method. It uses a module-global ``PoolManager`` instance. Therefore, its side effects could be shared across dependencies relying on it. To avoid side effects create a new ``PoolManager`` instance and use it instead. The method does not accept low-level ``**urlopen_kw`` keyword arguments. :param method: HTTP request method (such as GET, POST, PUT, etc.) :param url: The URL to perform the request on. :param body: Data to send in the request body, either :class:`str`, :class:`bytes`, an iterable of :class:`str`/:class:`bytes`, or a file-like object. :param fields: Data to encode and send in the request body. :param headers: Dictionary of custom headers to send, such as User-Agent, If-None-Match, etc. :param bool preload_content: If True, the response's body will be preloaded into memory. :param bool decode_content: If True, will attempt to decode the body based on the 'content-encoding' header. :param redirect: If True, automatically handle redirects (status codes 301, 302, 303, 307, 308). Each redirect counts as a retry. Disabling retries will disable redirect, too. :param retries: Configure the number of retries to allow before raising a :class:`~urllib3.exceptions.MaxRetryError` exception. If ``None`` (default) will retry 3 times, see ``Retry.DEFAULT``. Pass a :class:`~urllib3.util.retry.Retry` object for fine-grained control over different types of retries. Pass an integer number to retry connection errors that many times, but no other types of errors. Pass zero to never retry. If ``False``, then retries are disabled and any exception is raised immediately. Also, instead of raising a MaxRetryError on redirects, the redirect response will be returned. :type retries: :class:`~urllib3.util.retry.Retry`, False, or an int. :param timeout: If specified, overrides the default timeout for this one request. It may be a float (in seconds) or an instance of :class:`urllib3.util.Timeout`. :param json: Data to encode and send as JSON with UTF-encoded in the request body. The ``"Content-Type"`` header will be set to ``"application/json"`` unless specified otherwise. r8) _DEFAULT_POOLr) rBrDr9r:r;r<r=r>r?r@rAs r+rrusCX   '%  !   r, emscripten)inject_into_urllib3)rrrr)r0r1rr2)rBrCrDrCr9rEr:rFr;rGr<rHr=rHr>rHr?rIr@rJrArKrr)=__doc__ __future__rr systypingr5rr_base_connectionr _collectionsr_versionr connectionpoolr r r filepostr r poolmanagerrrrresponserr util.requestr util.retryr util.timeoutrsslOPENSSL_VERSION startswithwarnNotOpenSSLWarningOPENSSL_VERSION_INFO ImportError __author__ __license____all__r!r"r&DEBUGrr6SecurityWarningInsecurePlatformWarning HTTPWarningrrMrplatformcontrib.emscriptenrOr,r+rpsh#""""" ((((((((((((!!!!!!XXXXXXXXXX========BBBBBBBBBB44444444&&&&&&!!!!!!  JJJ   ) )* 5 5    B141D B B B  (     !I - -k B141D B B B    .   D "8    &(&&{{}}555*h :4HHHHi!CDQQQQ0:/E..... #"&/3#'"& )-,-"XXXXXXv<<777777 s.C CC