Spaces:
Paused
Paused
| Metadata-Version: 2.3 | |
| Name: httpx | |
| Version: 0.27.2 | |
| Summary: The next generation HTTP client. | |
| Project-URL: Changelog, https://github.com/encode/httpx/blob/master/CHANGELOG.md | |
| Project-URL: Documentation, https://www.python-httpx.org | |
| Project-URL: Homepage, https://github.com/encode/httpx | |
| Project-URL: Source, https://github.com/encode/httpx | |
| Author-email: Tom Christie <tom@tomchristie.com> | |
| License-Expression: BSD-3-Clause | |
| License-File: LICENSE.md | |
| Classifier: Development Status :: 4 - Beta | |
| Classifier: Environment :: Web Environment | |
| Classifier: Framework :: AsyncIO | |
| Classifier: Framework :: Trio | |
| Classifier: Intended Audience :: Developers | |
| Classifier: License :: OSI Approved :: BSD License | |
| Classifier: Operating System :: OS Independent | |
| Classifier: Programming Language :: Python :: 3 | |
| Classifier: Programming Language :: Python :: 3 :: Only | |
| Classifier: Programming Language :: Python :: 3.8 | |
| Classifier: Programming Language :: Python :: 3.9 | |
| Classifier: Programming Language :: Python :: 3.10 | |
| Classifier: Programming Language :: Python :: 3.11 | |
| Classifier: Programming Language :: Python :: 3.12 | |
| Classifier: Topic :: Internet :: WWW/HTTP | |
| Requires-Python: >=3.8 | |
| Requires-Dist: anyio | |
| Requires-Dist: certifi | |
| Requires-Dist: httpcore==1.* | |
| Requires-Dist: idna | |
| Requires-Dist: sniffio | |
| Provides-Extra: brotli | |
| Requires-Dist: brotli; (platform_python_implementation == 'CPython') and extra == 'brotli' | |
| Requires-Dist: brotlicffi; (platform_python_implementation != 'CPython') and extra == 'brotli' | |
| Provides-Extra: cli | |
| Requires-Dist: click==8.*; extra == 'cli' | |
| Requires-Dist: pygments==2.*; extra == 'cli' | |
| Requires-Dist: rich<14,>=10; extra == 'cli' | |
| Provides-Extra: http2 | |
| Requires-Dist: h2<5,>=3; extra == 'http2' | |
| Provides-Extra: socks | |
| Requires-Dist: socksio==1.*; extra == 'socks' | |
| Provides-Extra: zstd | |
| Requires-Dist: zstandard>=0.18.0; extra == 'zstd' | |
| Description-Content-Type: text/markdown | |
| <p align="center"> | |
| <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> | |
| </p> | |
| <p align="center"><strong>HTTPX</strong> <em>- A next-generation HTTP client for Python.</em></p> | |
| <p align="center"> | |
| <a href="https://github.com/encode/httpx/actions"> | |
| <img src="https://github.com/encode/httpx/workflows/Test%20Suite/badge.svg" alt="Test Suite"> | |
| </a> | |
| <a href="https://pypi.org/project/httpx/"> | |
| <img src="https://badge.fury.io/py/httpx.svg" alt="Package version"> | |
| </a> | |
| </p> | |
| HTTPX is a fully featured HTTP client library for Python 3. It includes **an integrated | |
| command line client**, has support for both **HTTP/1.1 and HTTP/2**, and provides both **sync | |
| and async APIs**. | |
| --- | |
| Install HTTPX using pip: | |
| ```shell | |
| pip install httpx | |
| ``` | |
| Now, let's get started: | |
| ```pycon | |
| >>> import httpx | |
| >>> r = httpx.get('https://www.example.org/') | |
| >>> r | |
| <Response [200 OK]> | |
| >>> r.status_code | |
| 200 | |
| >>> r.headers['content-type'] | |
| 'text/html; charset=UTF-8' | |
| >>> r.text | |
| '<!doctype html>\n<html>\n<head>\n<title>Example Domain</title>...' | |
| ``` | |
| Or, using the command-line client. | |
| ```shell | |
| pip install 'httpx[cli]' # The command line client is an optional dependency. | |
| ``` | |
| Which now allows us to use HTTPX directly from the command-line... | |
| <p align="center"> | |
| <img width="700" src="https://raw.githubusercontent.com/encode/httpx/master/docs/img/httpx-help.png" alt='httpx --help'> | |
| </p> | |
| Sending a request... | |
| <p align="center"> | |
| <img width="700" src="https://raw.githubusercontent.com/encode/httpx/master/docs/img/httpx-request.png" alt='httpx http://httpbin.org/json'> | |
| </p> | |
| ## Features | |
| HTTPX builds on the well-established usability of `requests`, and gives you: | |
| * A broadly [requests-compatible API](https://www.python-httpx.org/compatibility/). | |
| * An integrated command-line client. | |
| * HTTP/1.1 [and HTTP/2 support](https://www.python-httpx.org/http2/). | |
| * Standard synchronous interface, but with [async support if you need it](https://www.python-httpx.org/async/). | |
| * 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). | |
| * Strict timeouts everywhere. | |
| * Fully type annotated. | |
| * 100% test coverage. | |
| Plus all the standard features of `requests`... | |
| * International Domains and URLs | |
| * Keep-Alive & Connection Pooling | |
| * Sessions with Cookie Persistence | |
| * Browser-style SSL Verification | |
| * Basic/Digest Authentication | |
| * Elegant Key/Value Cookies | |
| * Automatic Decompression | |
| * Automatic Content Decoding | |
| * Unicode Response Bodies | |
| * Multipart File Uploads | |
| * HTTP(S) Proxy Support | |
| * Connection Timeouts | |
| * Streaming Downloads | |
| * .netrc Support | |
| * Chunked Requests | |
| ## Installation | |
| Install with pip: | |
| ```shell | |
| pip install httpx | |
| ``` | |
| Or, to include the optional HTTP/2 support, use: | |
| ```shell | |
| pip install httpx[http2] | |
| ``` | |
| HTTPX requires Python 3.8+. | |
| ## Documentation | |
| Project documentation is available at [https://www.python-httpx.org/](https://www.python-httpx.org/). | |
| For a run-through of all the basics, head over to the [QuickStart](https://www.python-httpx.org/quickstart/). | |
| 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. | |
| The [Developer Interface](https://www.python-httpx.org/api/) provides a comprehensive API reference. | |
| To find out about tools that integrate with HTTPX, see [Third Party Packages](https://www.python-httpx.org/third_party_packages/). | |
| ## Contribute | |
| If you want to contribute with HTTPX check out the [Contributing Guide](https://www.python-httpx.org/contributing/) to learn how to start. | |
| ## Dependencies | |
| The HTTPX project relies on these excellent libraries: | |
| * `httpcore` - The underlying transport implementation for `httpx`. | |
| * `h11` - HTTP/1.1 support. | |
| * `certifi` - SSL certificates. | |
| * `idna` - Internationalized domain name support. | |
| * `sniffio` - Async library autodetection. | |
| As well as these optional installs: | |
| * `h2` - HTTP/2 support. *(Optional, with `httpx[http2]`)* | |
| * `socksio` - SOCKS proxy support. *(Optional, with `httpx[socks]`)* | |
| * `rich` - Rich terminal support. *(Optional, with `httpx[cli]`)* | |
| * `click` - Command line client support. *(Optional, with `httpx[cli]`)* | |
| * `brotli` or `brotlicffi` - Decoding for "brotli" compressed responses. *(Optional, with `httpx[brotli]`)* | |
| * `zstandard` - Decoding for "zstd" compressed responses. *(Optional, with `httpx[zstd]`)* | |
| A huge amount of credit is due to `requests` for the API layout that | |
| much of this work follows, as well as to `urllib3` for plenty of design | |
| inspiration around the lower-level networking details. | |
| --- | |
| <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/>— 🦋 —</p> | |
| ## Release Information | |
| ### Fixed | |
| * Reintroduced supposedly-private `URLTypes` shortcut. (#2673) | |
| --- | |
| [Full changelog](https://github.com/encode/httpx/blob/master/CHANGELOG.md) | |