jpayne@68: Metadata-Version: 2.3 jpayne@68: Name: httpx jpayne@68: Version: 0.28.1 jpayne@68: Summary: The next generation HTTP client. jpayne@68: Project-URL: Changelog, https://github.com/encode/httpx/blob/master/CHANGELOG.md jpayne@68: Project-URL: Documentation, https://www.python-httpx.org jpayne@68: Project-URL: Homepage, https://github.com/encode/httpx jpayne@68: Project-URL: Source, https://github.com/encode/httpx jpayne@68: Author-email: Tom Christie jpayne@68: License: BSD-3-Clause jpayne@68: Classifier: Development Status :: 4 - Beta jpayne@68: Classifier: Environment :: Web Environment jpayne@68: Classifier: Framework :: AsyncIO jpayne@68: Classifier: Framework :: Trio jpayne@68: Classifier: Intended Audience :: Developers jpayne@68: Classifier: License :: OSI Approved :: BSD License jpayne@68: Classifier: Operating System :: OS Independent jpayne@68: Classifier: Programming Language :: Python :: 3 jpayne@68: Classifier: Programming Language :: Python :: 3 :: Only jpayne@68: Classifier: Programming Language :: Python :: 3.8 jpayne@68: Classifier: Programming Language :: Python :: 3.9 jpayne@68: Classifier: Programming Language :: Python :: 3.10 jpayne@68: Classifier: Programming Language :: Python :: 3.11 jpayne@68: Classifier: Programming Language :: Python :: 3.12 jpayne@68: Classifier: Topic :: Internet :: WWW/HTTP jpayne@68: Requires-Python: >=3.8 jpayne@68: Requires-Dist: anyio jpayne@68: Requires-Dist: certifi jpayne@68: Requires-Dist: httpcore==1.* jpayne@68: Requires-Dist: idna jpayne@68: Provides-Extra: brotli jpayne@68: Requires-Dist: brotli; (platform_python_implementation == 'CPython') and extra == 'brotli' jpayne@68: Requires-Dist: brotlicffi; (platform_python_implementation != 'CPython') and extra == 'brotli' jpayne@68: Provides-Extra: cli jpayne@68: Requires-Dist: click==8.*; extra == 'cli' jpayne@68: Requires-Dist: pygments==2.*; extra == 'cli' jpayne@68: Requires-Dist: rich<14,>=10; extra == 'cli' jpayne@68: Provides-Extra: http2 jpayne@68: Requires-Dist: h2<5,>=3; extra == 'http2' jpayne@68: Provides-Extra: socks jpayne@68: Requires-Dist: socksio==1.*; extra == 'socks' jpayne@68: Provides-Extra: zstd jpayne@68: Requires-Dist: zstandard>=0.18.0; extra == 'zstd' jpayne@68: Description-Content-Type: text/markdown jpayne@68: jpayne@68:

jpayne@68: HTTPX jpayne@68:

jpayne@68: jpayne@68:

HTTPX - A next-generation HTTP client for Python.

jpayne@68: jpayne@68:

jpayne@68: jpayne@68: Test Suite jpayne@68: jpayne@68: jpayne@68: Package version jpayne@68: jpayne@68:

jpayne@68: jpayne@68: 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**. jpayne@68: jpayne@68: --- jpayne@68: jpayne@68: Install HTTPX using pip: jpayne@68: jpayne@68: ```shell jpayne@68: $ pip install httpx jpayne@68: ``` jpayne@68: jpayne@68: Now, let's get started: jpayne@68: jpayne@68: ```pycon jpayne@68: >>> import httpx jpayne@68: >>> r = httpx.get('https://www.example.org/') jpayne@68: >>> r jpayne@68: jpayne@68: >>> r.status_code jpayne@68: 200 jpayne@68: >>> r.headers['content-type'] jpayne@68: 'text/html; charset=UTF-8' jpayne@68: >>> r.text jpayne@68: '\n\n\nExample Domain...' jpayne@68: ``` jpayne@68: jpayne@68: Or, using the command-line client. jpayne@68: jpayne@68: ```shell jpayne@68: $ pip install 'httpx[cli]' # The command line client is an optional dependency. jpayne@68: ``` jpayne@68: jpayne@68: Which now allows us to use HTTPX directly from the command-line... jpayne@68: jpayne@68:

jpayne@68: httpx --help jpayne@68:

jpayne@68: jpayne@68: Sending a request... jpayne@68: jpayne@68:

jpayne@68: httpx http://httpbin.org/json jpayne@68:

jpayne@68: jpayne@68: ## Features jpayne@68: jpayne@68: HTTPX builds on the well-established usability of `requests`, and gives you: jpayne@68: jpayne@68: * A broadly [requests-compatible API](https://www.python-httpx.org/compatibility/). jpayne@68: * An integrated command-line client. jpayne@68: * HTTP/1.1 [and HTTP/2 support](https://www.python-httpx.org/http2/). jpayne@68: * Standard synchronous interface, but with [async support if you need it](https://www.python-httpx.org/async/). jpayne@68: * 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). jpayne@68: * Strict timeouts everywhere. jpayne@68: * Fully type annotated. jpayne@68: * 100% test coverage. jpayne@68: jpayne@68: Plus all the standard features of `requests`... jpayne@68: jpayne@68: * International Domains and URLs jpayne@68: * Keep-Alive & Connection Pooling jpayne@68: * Sessions with Cookie Persistence jpayne@68: * Browser-style SSL Verification jpayne@68: * Basic/Digest Authentication jpayne@68: * Elegant Key/Value Cookies jpayne@68: * Automatic Decompression jpayne@68: * Automatic Content Decoding jpayne@68: * Unicode Response Bodies jpayne@68: * Multipart File Uploads jpayne@68: * HTTP(S) Proxy Support jpayne@68: * Connection Timeouts jpayne@68: * Streaming Downloads jpayne@68: * .netrc Support jpayne@68: * Chunked Requests jpayne@68: jpayne@68: ## Installation jpayne@68: jpayne@68: Install with pip: jpayne@68: jpayne@68: ```shell jpayne@68: $ pip install httpx jpayne@68: ``` jpayne@68: jpayne@68: Or, to include the optional HTTP/2 support, use: jpayne@68: jpayne@68: ```shell jpayne@68: $ pip install httpx[http2] jpayne@68: ``` jpayne@68: jpayne@68: HTTPX requires Python 3.8+. jpayne@68: jpayne@68: ## Documentation jpayne@68: jpayne@68: Project documentation is available at [https://www.python-httpx.org/](https://www.python-httpx.org/). jpayne@68: jpayne@68: For a run-through of all the basics, head over to the [QuickStart](https://www.python-httpx.org/quickstart/). jpayne@68: jpayne@68: 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. jpayne@68: jpayne@68: The [Developer Interface](https://www.python-httpx.org/api/) provides a comprehensive API reference. jpayne@68: jpayne@68: To find out about tools that integrate with HTTPX, see [Third Party Packages](https://www.python-httpx.org/third_party_packages/). jpayne@68: jpayne@68: ## Contribute jpayne@68: jpayne@68: If you want to contribute with HTTPX check out the [Contributing Guide](https://www.python-httpx.org/contributing/) to learn how to start. jpayne@68: jpayne@68: ## Dependencies jpayne@68: jpayne@68: The HTTPX project relies on these excellent libraries: jpayne@68: jpayne@68: * `httpcore` - The underlying transport implementation for `httpx`. jpayne@68: * `h11` - HTTP/1.1 support. jpayne@68: * `certifi` - SSL certificates. jpayne@68: * `idna` - Internationalized domain name support. jpayne@68: * `sniffio` - Async library autodetection. jpayne@68: jpayne@68: As well as these optional installs: jpayne@68: jpayne@68: * `h2` - HTTP/2 support. *(Optional, with `httpx[http2]`)* jpayne@68: * `socksio` - SOCKS proxy support. *(Optional, with `httpx[socks]`)* jpayne@68: * `rich` - Rich terminal support. *(Optional, with `httpx[cli]`)* jpayne@68: * `click` - Command line client support. *(Optional, with `httpx[cli]`)* jpayne@68: * `brotli` or `brotlicffi` - Decoding for "brotli" compressed responses. *(Optional, with `httpx[brotli]`)* jpayne@68: * `zstandard` - Decoding for "zstd" compressed responses. *(Optional, with `httpx[zstd]`)* jpayne@68: jpayne@68: A huge amount of credit is due to `requests` for the API layout that jpayne@68: much of this work follows, as well as to `urllib3` for plenty of design jpayne@68: inspiration around the lower-level networking details. jpayne@68: jpayne@68: --- jpayne@68: jpayne@68:

HTTPX is BSD licensed code.
Designed & crafted with care.

— 🦋 —

jpayne@68: jpayne@68: ## Release Information jpayne@68: jpayne@68: ### Fixed jpayne@68: jpayne@68: * Reintroduced supposedly-private `URLTypes` shortcut. (#2673) jpayne@68: jpayne@68: jpayne@68: --- jpayne@68: jpayne@68: [Full changelog](https://github.com/encode/httpx/blob/master/CHANGELOG.md)