/opt/alt/python27/lib/python2.7/site-packages/requests
NameSizeModeActions
packages/-0755rm
adapters.py186800644editdlrm
adapters.pyc172040644editdlrm
adapters.pyo172040644editdlrm
api.py57950644editdlrm
api.pyc66330644editdlrm
api.pyo66330644editdlrm
auth.py80750644editdlrm
auth.pyc90770644editdlrm
auth.pyo90770644editdlrm
certs.py6490644editdlrm
certs.pyc9230644editdlrm
certs.pyo9230644editdlrm
compat.py15490644editdlrm
compat.pyc17070644editdlrm
compat.pyo17070644editdlrm
cookies.py175640644editdlrm
cookies.pyc217090644editdlrm
cookies.pyo217090644editdlrm
exceptions.py27760644editdlrm
exceptions.pyc61210644editdlrm
exceptions.pyo61210644editdlrm
hooks.py7670644editdlrm
hooks.pyc12400644editdlrm
hooks.pyo12400644editdlrm
models.py295300644editdlrm
models.pyc264090644editdlrm
models.pyo264090644editdlrm
sessions.py248970644editdlrm
sessions.pyc205480644editdlrm
sessions.pyo205480644editdlrm
status_codes.py33150644editdlrm
status_codes.pyc46290644editdlrm
status_codes.pyo46290644editdlrm
structures.py30170644editdlrm
structures.pyc54450644editdlrm
structures.pyo54450644editdlrm
utils.py222280644editdlrm
utils.pyc216640644editdlrm
utils.pyo216640644editdlrm
__init__.py22150644editdlrm
__init__.pyc28680644editdlrm
__init__.pyo28680644editdlrm
Edit: /opt/alt/python27/lib/python2.7/site-packages/requests/utils.pyo (21664B)
 #Wc@sdZddlZddlZddlZddlZddlZddlZddlZddlZddl Z ddl m Z ddl m Z ddl mZddl mZmZmZmZmZmZmZmZmZmZmZmZddlmZmZdd lm Z dd l!m"Z"m#Z#efZ$d5Z%e j&Z'd Z(dZ)e*dZ+dZ,dZ-dZ.dZ/dZ0e*dZ1dZ2dZ3dZ4dZ5dZ6dZ7dZ8e9ddZ:dZ;d Z<d!Z=d"Z>d#Z?d$Z@d%ZAd&ZBd'ZCd(d)ZDd*ZEd+ZFd,jGd-ZHeHd.ZIeHd/ZJd0ZKd1ZLd2ZMd-d3ZNd4ZOdS(6s requests.utils ~~~~~~~~~~~~~~ This module provides utility functions that are used within Requests that are also useful for external consumption. iNi(t __version__(tcerts(tparse_http_list( tquoteturlparsetbyteststrt OrderedDicttunquotetis_py2t builtin_strt getproxiest proxy_bypasst urlunparset basestring(tRequestsCookieJartcookiejar_from_dict(tCaseInsensitiveDict(t InvalidURLtFileModeWarnings.netrct_netrccCs"t|dr|j}n|S(s/Returns an internal sequence dictionary update.titems(thasattrR(td((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pytdict_to_sequence'scCs)d}d}t|dr*t|}nt|drE|j}nt|drit|j}nmt|dry|j}Wntjk rqXtj|j}d|j krt j dt qnt|dry|j }Wqttfk r|}qXntd||S( Nit__len__tlentgetvaluetfilenotbs%Requests has determined the content-length for this request using the binary size of the file: however, the file has been opened in text mode (i.e. without the 'b' flag in the mode). This may lead to an incorrect content-length. In Requests 3.0, support will be removed for files in text mode.ttell(RRRRtiotUnsupportedOperationtostfstattst_sizetmodetwarningstwarnRRtOSErrortIOErrortmax(tot total_lengthtcurrent_positionR((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pyt super_len0s0   c CseyGddlm}m}d}x^tD]V}ytjjdj|}Wntk r_dSXtjj |r&|}Pq&q&W|dkrdSt |}d}t |t r|j d}n|jj|d} yG||j| } | r| drdnd} | | | d fSWn#|tfk rE|rFqFnXWnttfk r`nXdS( s;Returns the Requests tuple auth for a given url from netrc.i(tnetrctNetrcParseErrors~/{0}Nt:tasciiiii(R.R/tNonet NETRC_FILESR!tpatht expandusertformattKeyErrortexistsRt isinstanceRtdecodetnetloctsplittauthenticatorsR(t ImportErrortAttributeError( turlt raise_errorsR.R/t netrc_pathtftloctritsplitstrthostRtlogin_i((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pytget_netrc_auth`s8    cCs[t|dd}|rWt|trW|ddkrW|ddkrWtjj|SdS(s0Tries to guess the filename of the given object.tnameitN(tgetattrR2R9RR!R4tbasename(tobjRJ((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pytguess_filenames%cCsD|dkrdSt|ttttfr:tdnt|S(sTake an object and test to see if it can be represented as a dictionary. Unless it can not be represented as such, return an OrderedDict, e.g., :: >>> from_key_val_list([('key', 'val')]) OrderedDict([('key', 'val')]) >>> from_key_val_list('string') ValueError: need more than 1 value to unpack >>> from_key_val_list({'key': 'val'}) OrderedDict([('key', 'val')]) s+cannot encode objects that are not 2-tuplesN(R2R9RRtbooltintt ValueErrorR(tvalue((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pytfrom_key_val_lists  cCse|dkrdSt|ttttfr:tdnt|tjr[|j }nt |S(szTake an object and test to see if it can be represented as a dictionary. If it can be, return a list of tuples, e.g., :: >>> to_key_val_list([('key', 'val')]) [('key', 'val')] >>> to_key_val_list({'key': 'val'}) [('key', 'val')] >>> to_key_val_list('string') ValueError: cannot encode objects that are not 2-tuples. s+cannot encode objects that are not 2-tuplesN( R2R9RRRQRRRSt collectionstMappingRtlist(RT((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pytto_key_val_lists cCshg}x[t|D]M}|d |dko8dknrSt|dd!}n|j|qW|S(sParse lists as described by RFC 2068 Section 2. In particular, parse comma-separated lists where the elements of the list may include quoted-strings. A quoted-string could contain a comma. A non-quoted string could have quotes in the middle. Quotes are removed automatically after parsing. It basically works like :func:`parse_set_header` just that items may appear multiple times and case sensitivity is preserved. The return value is a standard :class:`list`: >>> parse_list_header('token, "quoted value"') ['token', 'quoted value'] To create a header from the :class:`list` again, use the :func:`dump_header` function. :param value: a string with a list header. :return: :class:`list` iit"(t_parse_list_headertunquote_header_valuetappend(RTtresulttitem((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pytparse_list_headers $cCsi}xt|D]~}d|kr5d||>> d = parse_dict_header('foo="is a fish", bar="as well"') >>> type(d) is dict True >>> sorted(d.items()) [('bar', 'as well'), ('foo', 'is a fish')] If there is no value for a key it will be `None`: >>> parse_dict_header('key_without_value') {'key_without_value': None} To create a header from the :class:`dict` again, use the :func:`dump_header` function. :param value: a string with a dict header. :return: :class:`dict` t=iiRZN(R[R2R<R\(RTR^R_RJ((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pytparse_dict_headers  $cCsq|rm|d|dko%dknrm|dd!}| sN|d dkrm|jddjddSn|S( sUnquotes a header value. (Reversal of :func:`quote_header_value`). This does not use the real unquoting but what browsers are actually using for quoting. :param value: the header value to unquote. iiRZiis\\s\s\"(treplace(RTt is_filename((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pyR\ s * cCs+i}x|D]}|j||j]tflagss+]s$^<\?xml.*?encoding=["\']*(.+?)["\'>](R%R&tDeprecationWarningtretcompiletItfindall(tcontentt charset_ret pragma_retxml_re((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pytget_encodings_from_content?scCs_|jd}|sdStj|\}}d|krK|djdSd|kr[dSdS(smReturns encodings from given HTTP Header Dict. :param headers: dictionary to extract encoding from. s content-typetcharsets'"ttexts ISO-8859-1N(tgetR2tcgit parse_headertstrip(theaderst content_typetparams((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pytget_encoding_from_headersSs  ccs|jdkr)x|D] }|VqWdStj|jdd}x+|D]#}|j|}|rK|VqKqKW|jddt}|r|VndS(sStream decodes a iterator.NterrorsRcttfinal(tencodingR2tcodecstgetincrementaldecoderR:tTrue(titeratortrR_tdecodertchunktrv((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pytstream_decode_response_unicodegs    ccs=d}x0|t|kr8||||!V||7}q WdS(s Iterate over slices of a string.iN(R(tstringt slice_lengthtpos((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pyt iter_slicesyscCstjdtg}t|j}|rcyt|j|SWqctk r_|j|qcXnyt|j|ddSWnt k r|jSXdS(sReturns the requested content back in unicode. :param r: Response object to get unicode content from. Tried: 1. charset from content-type 2. fall back and replace all unicode characters sIn requests 3.0, get_unicode_from_response will be removed. For more information, please see the discussion on issue #2266. (This warning should only appear once.)RRcN( R%R&RmRR}RRrt UnicodeErrorR]t TypeError(Rttried_encodingsR((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pytget_unicode_from_responses   t4ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzs0123456789-._~cCs|jd}xtdt|D]}||dd!}t|dkr|jrytt|d}Wn!tk rtd|nX|tkr|||d||dA}tjtjd|S(st Converts mask from /xx format to xxx.xxx.xxx.xxx Example: if mask is 24 function returns 255.255.255.0 Iii s>I(Rt inet_ntoaRtpack(tmaskR((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pyRscCs-ytj|Wntjk r(tSXtS(N(RRterrortFalseR(t string_ip((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pytis_ipv4_addresss cCs|jddkryt|jdd}Wntk rFtSX|dks_|dkrctSytj|jddWqtjk rtSXntStS(s9Very simple check of the cidr format in no_proxy variableRii i( tcountRRR<RSRRRRR(tstring_networkR((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pyt is_valid_cidrs cCs(d}|d}t|j}|rd|jddjdD}|jdd}t|rxs|D](}t|rut||rtSququWqx@|D]5}|j|s|jddj|rtSqWnyt |}Wn t t j fk rt }nX|r$tSt S( s: Returns whether we should bypass proxies or not. cSs(tjj|p'tjj|jS(N(R!tenvironRytupper(tk((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pyt stno_proxycss|]}|r|VqdS(N((t.0RG((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pys st Rt,R0i(RR;RcR<RRRRtendswithR RRtgaierrorR(R@t get_proxyRR;Rtproxy_ipRGtbypass((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pytshould_bypass_proxiess*  %    +  cCst|riStSdS(s%Return a dict of environment proxies.N(RR (R@((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pytget_environ_proxies6s cCsr|p i}t|}|jdkr0d}n|j|jd|j}|dkrn|j|j}n|S(sSelect a proxy for the url, if applicable. :param url: The url being for the request :param proxies: A dictionary of schemes or schemes and hosts to proxy URLs s://N(RthostnameR2Rytscheme(R@tproxiesturlpartstproxy((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pyt select_proxy>s    spython-requestscCsd|tfS(s4Return a string representing the default user agent.s%s/%s(R(RJ((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pytdefault_user_agentOscCs2titd6djd d6dd6dd 6S( Ns User-Agents, tgziptdeflatesAccept-Encodings*/*tAccepts keep-alivet Connection(RR(RRR(((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pytdefault_headersTs  c Csg}d}xtjd|D]}y|jdd\}}Wntk ra|d}}nXi|jdd6}xa|jdD]P}y|jd\}}Wntk rPnX|j|||j|; rel=front; type="image/jpeg",; rel=back;type="image/jpeg" s '"s, * '"R@Ra(RnR<RSR|R]( RTtlinkst replace_charstvalR@Rtlinktparamtkey((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pytparse_header_links]s    tR1iicCs|d }|tjtjfkr&dS|d tjkr=dS|d tjtjfkr]dS|jt}|dkr|dS|dkr|dddtkrd S|d ddtkrd Sn|dkr|d t krd S|d t krd SndS(Nisutf-32is utf-8-sigisutf-16isutf-8s utf-16-beis utf-16-les utf-32-bes utf-32-le( Rt BOM_UTF32_LEtBOM32_BEtBOM_UTF8t BOM_UTF16_LEt BOM_UTF16_BERt_nullt_null2t_null3R2(tdatatsamplet nullcount((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pytguess_json_utfs*    cCsSt||\}}}}}}|s7||}}nt||||||fS(sGiven a URL that may or may not have a scheme, prepend the given scheme. Does not replace a present scheme with the one provided as an argument.(RR (R@t new_schemeRR;R4Rtquerytfragment((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pytprepend_scheme_if_neededs!cCsRt|}y"t|jt|jf}Wnttfk rMd}nX|S(s_Given a url with authentication components, extract them into a tuple of username,password.R(RR(RRtusernametpasswordR?R(R@tparsedtauth((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pytget_auth_from_urls  " cCsCt|tr|}n'tr0|j|}n|j|}|S(s Given a string object, regardless of type, returns a representation of that string in the native string type, encoding and decoding where necessary. This assumes ASCII unless told otherwise. (R9R R tencodeR:(RRtout((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pytto_native_strings  cCsft|\}}}}}}|s4||}}n|jddd}t|||||dfS(sE Given a url remove the fragment and the authentication part t@iiR(RtrsplitR (R@RR;R4RRR((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pyt urldefragauths (s.netrcs_netrc(Pt__doc__RzRRVRR!RnRRR%RRRtcompatRR[RRRRRRR R R R R RtcookiesRRt structuresRt exceptionsRRt_hush_pyflakesR3twheretDEFAULT_CA_BUNDLE_PATHRR-RRIRPRURYR`RbR\RhRkRvRRRRt frozensetRRRRRRRRRRRRRRRRRRRRRR(((s?/opt/alt/python27/lib/python2.7/site-packages/requests/utils.pyt st         R   0 3     "       $      0    !