12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- """
- requests.compat
- ~~~~~~~~~~~~~~~
-
- This module previously handled import compatibility issues
- between Python 2 and Python 3. It remains for backwards
- compatibility until the next major version.
- """
-
- try:
- import chardet
- except ImportError:
- import charset_normalizer as chardet
-
- import sys
-
- # -------
- # Pythons
- # -------
-
- # Syntax sugar.
- _ver = sys.version_info
-
- #: Python 2.x?
- is_py2 = _ver[0] == 2
-
- #: Python 3.x?
- is_py3 = _ver[0] == 3
-
- # json/simplejson module import resolution
- has_simplejson = False
- try:
- import simplejson as json
-
- has_simplejson = True
- except ImportError:
- import json
-
- if has_simplejson:
- from simplejson import JSONDecodeError
- else:
- from json import JSONDecodeError
-
- # Keep OrderedDict for backwards compatibility.
- from collections import OrderedDict
- from collections.abc import Callable, Mapping, MutableMapping
- from http import cookiejar as cookielib
- from http.cookies import Morsel
- from io import StringIO
-
- # --------------
- # Legacy Imports
- # --------------
- from urllib.parse import (
- quote,
- quote_plus,
- unquote,
- unquote_plus,
- urldefrag,
- urlencode,
- urljoin,
- urlparse,
- urlsplit,
- urlunparse,
- )
- from urllib.request import (
- getproxies,
- getproxies_environment,
- parse_http_list,
- proxy_bypass,
- proxy_bypass_environment,
- )
-
- builtin_str = str
- str = str
- bytes = bytes
- basestring = (str, bytes)
- numeric_types = (int, float)
- integer_types = (int,)
|