METADATA 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207
  1. Metadata-Version: 2.3
  2. Name: httpx
  3. Version: 0.27.2
  4. Summary: The next generation HTTP client.
  5. Project-URL: Changelog, https://github.com/encode/httpx/blob/master/CHANGELOG.md
  6. Project-URL: Documentation, https://www.python-httpx.org
  7. Project-URL: Homepage, https://github.com/encode/httpx
  8. Project-URL: Source, https://github.com/encode/httpx
  9. Author-email: Tom Christie <tom@tomchristie.com>
  10. License-Expression: BSD-3-Clause
  11. License-File: LICENSE.md
  12. Classifier: Development Status :: 4 - Beta
  13. Classifier: Environment :: Web Environment
  14. Classifier: Framework :: AsyncIO
  15. Classifier: Framework :: Trio
  16. Classifier: Intended Audience :: Developers
  17. Classifier: License :: OSI Approved :: BSD License
  18. Classifier: Operating System :: OS Independent
  19. Classifier: Programming Language :: Python :: 3
  20. Classifier: Programming Language :: Python :: 3 :: Only
  21. Classifier: Programming Language :: Python :: 3.8
  22. Classifier: Programming Language :: Python :: 3.9
  23. Classifier: Programming Language :: Python :: 3.10
  24. Classifier: Programming Language :: Python :: 3.11
  25. Classifier: Programming Language :: Python :: 3.12
  26. Classifier: Topic :: Internet :: WWW/HTTP
  27. Requires-Python: >=3.8
  28. Requires-Dist: anyio
  29. Requires-Dist: certifi
  30. Requires-Dist: httpcore==1.*
  31. Requires-Dist: idna
  32. Requires-Dist: sniffio
  33. Provides-Extra: brotli
  34. Requires-Dist: brotli; (platform_python_implementation == 'CPython') and extra == 'brotli'
  35. Requires-Dist: brotlicffi; (platform_python_implementation != 'CPython') and extra == 'brotli'
  36. Provides-Extra: cli
  37. Requires-Dist: click==8.*; extra == 'cli'
  38. Requires-Dist: pygments==2.*; extra == 'cli'
  39. Requires-Dist: rich<14,>=10; extra == 'cli'
  40. Provides-Extra: http2
  41. Requires-Dist: h2<5,>=3; extra == 'http2'
  42. Provides-Extra: socks
  43. Requires-Dist: socksio==1.*; extra == 'socks'
  44. Provides-Extra: zstd
  45. Requires-Dist: zstandard>=0.18.0; extra == 'zstd'
  46. Description-Content-Type: text/markdown
  47. <p align="center">
  48. <a href="https://www.python-httpx.org/"><img width="350" height="208" src="https://raw.githubusercontent.com/encode/httpx/master/docs/img/butterfly.png" alt='HTTPX'></a>
  49. </p>
  50. <p align="center"><strong>HTTPX</strong> <em>- A next-generation HTTP client for Python.</em></p>
  51. <p align="center">
  52. <a href="https://github.com/encode/httpx/actions">
  53. <img src="https://github.com/encode/httpx/workflows/Test%20Suite/badge.svg" alt="Test Suite">
  54. </a>
  55. <a href="https://pypi.org/project/httpx/">
  56. <img src="https://badge.fury.io/py/httpx.svg" alt="Package version">
  57. </a>
  58. </p>
  59. HTTPX is a fully featured HTTP client library for Python 3. It includes **an integrated
  60. command line client**, has support for both **HTTP/1.1 and HTTP/2**, and provides both **sync
  61. and async APIs**.
  62. ---
  63. Install HTTPX using pip:
  64. ```shell
  65. pip install httpx
  66. ```
  67. Now, let's get started:
  68. ```pycon
  69. >>> import httpx
  70. >>> r = httpx.get('https://www.example.org/')
  71. >>> r
  72. <Response [200 OK]>
  73. >>> r.status_code
  74. 200
  75. >>> r.headers['content-type']
  76. 'text/html; charset=UTF-8'
  77. >>> r.text
  78. '<!doctype html>\n<html>\n<head>\n<title>Example Domain</title>...'
  79. ```
  80. Or, using the command-line client.
  81. ```shell
  82. pip install 'httpx[cli]' # The command line client is an optional dependency.
  83. ```
  84. Which now allows us to use HTTPX directly from the command-line...
  85. <p align="center">
  86. <img width="700" src="https://raw.githubusercontent.com/encode/httpx/master/docs/img/httpx-help.png" alt='httpx --help'>
  87. </p>
  88. Sending a request...
  89. <p align="center">
  90. <img width="700" src="https://raw.githubusercontent.com/encode/httpx/master/docs/img/httpx-request.png" alt='httpx http://httpbin.org/json'>
  91. </p>
  92. ## Features
  93. HTTPX builds on the well-established usability of `requests`, and gives you:
  94. * A broadly [requests-compatible API](https://www.python-httpx.org/compatibility/).
  95. * An integrated command-line client.
  96. * HTTP/1.1 [and HTTP/2 support](https://www.python-httpx.org/http2/).
  97. * Standard synchronous interface, but with [async support if you need it](https://www.python-httpx.org/async/).
  98. * Ability to make requests directly to [WSGI applications](https://www.python-httpx.org/advanced/transports/#wsgi-transport) or [ASGI applications](https://www.python-httpx.org/advanced/transports/#asgi-transport).
  99. * Strict timeouts everywhere.
  100. * Fully type annotated.
  101. * 100% test coverage.
  102. Plus all the standard features of `requests`...
  103. * International Domains and URLs
  104. * Keep-Alive & Connection Pooling
  105. * Sessions with Cookie Persistence
  106. * Browser-style SSL Verification
  107. * Basic/Digest Authentication
  108. * Elegant Key/Value Cookies
  109. * Automatic Decompression
  110. * Automatic Content Decoding
  111. * Unicode Response Bodies
  112. * Multipart File Uploads
  113. * HTTP(S) Proxy Support
  114. * Connection Timeouts
  115. * Streaming Downloads
  116. * .netrc Support
  117. * Chunked Requests
  118. ## Installation
  119. Install with pip:
  120. ```shell
  121. pip install httpx
  122. ```
  123. Or, to include the optional HTTP/2 support, use:
  124. ```shell
  125. pip install httpx[http2]
  126. ```
  127. HTTPX requires Python 3.8+.
  128. ## Documentation
  129. Project documentation is available at [https://www.python-httpx.org/](https://www.python-httpx.org/).
  130. For a run-through of all the basics, head over to the [QuickStart](https://www.python-httpx.org/quickstart/).
  131. For more advanced topics, see the [Advanced Usage](https://www.python-httpx.org/advanced/) section, the [async support](https://www.python-httpx.org/async/) section, or the [HTTP/2](https://www.python-httpx.org/http2/) section.
  132. The [Developer Interface](https://www.python-httpx.org/api/) provides a comprehensive API reference.
  133. To find out about tools that integrate with HTTPX, see [Third Party Packages](https://www.python-httpx.org/third_party_packages/).
  134. ## Contribute
  135. If you want to contribute with HTTPX check out the [Contributing Guide](https://www.python-httpx.org/contributing/) to learn how to start.
  136. ## Dependencies
  137. The HTTPX project relies on these excellent libraries:
  138. * `httpcore` - The underlying transport implementation for `httpx`.
  139. * `h11` - HTTP/1.1 support.
  140. * `certifi` - SSL certificates.
  141. * `idna` - Internationalized domain name support.
  142. * `sniffio` - Async library autodetection.
  143. As well as these optional installs:
  144. * `h2` - HTTP/2 support. *(Optional, with `httpx[http2]`)*
  145. * `socksio` - SOCKS proxy support. *(Optional, with `httpx[socks]`)*
  146. * `rich` - Rich terminal support. *(Optional, with `httpx[cli]`)*
  147. * `click` - Command line client support. *(Optional, with `httpx[cli]`)*
  148. * `brotli` or `brotlicffi` - Decoding for "brotli" compressed responses. *(Optional, with `httpx[brotli]`)*
  149. * `zstandard` - Decoding for "zstd" compressed responses. *(Optional, with `httpx[zstd]`)*
  150. A huge amount of credit is due to `requests` for the API layout that
  151. much of this work follows, as well as to `urllib3` for plenty of design
  152. inspiration around the lower-level networking details.
  153. ---
  154. <p align="center"><i>HTTPX is <a href="https://github.com/encode/httpx/blob/master/LICENSE.md">BSD licensed</a> code.<br/>Designed & crafted with care.</i><br/>&mdash; 🦋 &mdash;</p>
  155. ## Release Information
  156. ### Fixed
  157. * Reintroduced supposedly-private `URLTypes` shortcut. (#2673)
  158. ---
  159. [Full changelog](https://github.com/encode/httpx/blob/master/CHANGELOG.md)