HTTPX is a fully featured HTTP client for Python 3, which provides sync and async APIs, and support for both HTTP/1.1 and HTTP/2.
HTTPX builds on the well-established usability of requests, and gives you:
A broadly requests-compatible API.
Standard synchronous interface, but with async support if you need it.
HTTP/1.1 and HTTP/2 support.
Ability to make requests directly to WSGI applications or ASGI applications.
Strict timeouts everywhere.
Fully type annotated.
99% 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