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

jpayne@69: HTTPX jpayne@69:

jpayne@69: jpayne@69:

HTTPX - A next-generation HTTP client for Python.

jpayne@69: jpayne@69:

jpayne@69: jpayne@69: Test Suite jpayne@69: jpayne@69: jpayne@69: Package version jpayne@69: jpayne@69:

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

jpayne@69: httpx --help jpayne@69:

jpayne@69: jpayne@69: Sending a request... jpayne@69: jpayne@69:

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

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

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

— 🦋 —

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