__init__.py 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. from .__version__ import __description__, __title__, __version__
  2. from ._api import delete, get, head, options, patch, post, put, request, stream
  3. from ._auth import Auth, BasicAuth, DigestAuth, NetRCAuth
  4. from ._client import USE_CLIENT_DEFAULT, AsyncClient, Client
  5. from ._config import Limits, Proxy, Timeout, create_ssl_context
  6. from ._content import ByteStream
  7. from ._exceptions import (
  8. CloseError,
  9. ConnectError,
  10. ConnectTimeout,
  11. CookieConflict,
  12. DecodingError,
  13. HTTPError,
  14. HTTPStatusError,
  15. InvalidURL,
  16. LocalProtocolError,
  17. NetworkError,
  18. PoolTimeout,
  19. ProtocolError,
  20. ProxyError,
  21. ReadError,
  22. ReadTimeout,
  23. RemoteProtocolError,
  24. RequestError,
  25. RequestNotRead,
  26. ResponseNotRead,
  27. StreamClosed,
  28. StreamConsumed,
  29. StreamError,
  30. TimeoutException,
  31. TooManyRedirects,
  32. TransportError,
  33. UnsupportedProtocol,
  34. WriteError,
  35. WriteTimeout,
  36. )
  37. from ._models import Cookies, Headers, Request, Response
  38. from ._status_codes import codes
  39. from ._transports.asgi import ASGITransport
  40. from ._transports.base import AsyncBaseTransport, BaseTransport
  41. from ._transports.default import AsyncHTTPTransport, HTTPTransport
  42. from ._transports.mock import MockTransport
  43. from ._transports.wsgi import WSGITransport
  44. from ._types import AsyncByteStream, SyncByteStream
  45. from ._urls import URL, QueryParams
  46. try:
  47. from ._main import main
  48. except ImportError: # pragma: no cover
  49. def main() -> None: # type: ignore
  50. import sys
  51. print(
  52. "The httpx command line client could not run because the required "
  53. "dependencies were not installed.\nMake sure you've installed "
  54. "everything with: pip install 'httpx[cli]'"
  55. )
  56. sys.exit(1)
  57. __all__ = [
  58. "__description__",
  59. "__title__",
  60. "__version__",
  61. "ASGITransport",
  62. "AsyncBaseTransport",
  63. "AsyncByteStream",
  64. "AsyncClient",
  65. "AsyncHTTPTransport",
  66. "Auth",
  67. "BaseTransport",
  68. "BasicAuth",
  69. "ByteStream",
  70. "Client",
  71. "CloseError",
  72. "codes",
  73. "ConnectError",
  74. "ConnectTimeout",
  75. "CookieConflict",
  76. "Cookies",
  77. "create_ssl_context",
  78. "DecodingError",
  79. "delete",
  80. "DigestAuth",
  81. "get",
  82. "head",
  83. "Headers",
  84. "HTTPError",
  85. "HTTPStatusError",
  86. "HTTPTransport",
  87. "InvalidURL",
  88. "Limits",
  89. "LocalProtocolError",
  90. "main",
  91. "MockTransport",
  92. "NetRCAuth",
  93. "NetworkError",
  94. "options",
  95. "patch",
  96. "PoolTimeout",
  97. "post",
  98. "ProtocolError",
  99. "Proxy",
  100. "ProxyError",
  101. "put",
  102. "QueryParams",
  103. "ReadError",
  104. "ReadTimeout",
  105. "RemoteProtocolError",
  106. "request",
  107. "Request",
  108. "RequestError",
  109. "RequestNotRead",
  110. "Response",
  111. "ResponseNotRead",
  112. "stream",
  113. "StreamClosed",
  114. "StreamConsumed",
  115. "StreamError",
  116. "SyncByteStream",
  117. "Timeout",
  118. "TimeoutException",
  119. "TooManyRedirects",
  120. "TransportError",
  121. "UnsupportedProtocol",
  122. "URL",
  123. "USE_CLIENT_DEFAULT",
  124. "WriteError",
  125. "WriteTimeout",
  126. "WSGITransport",
  127. ]
  128. __locals = locals()
  129. for __name in __all__:
  130. if not __name.startswith("__"):
  131. setattr(__locals[__name], "__module__", "httpx") # noqa