Niquests is a modern Python HTTP client designed as a drop-in replacement for Requests. It keeps the familiar Requests-style API while adding newer protocol support that the original library does not prioritize. The library can automatically work across HTTP/1.1, HTTP/2, and HTTP/3, and it also includes WebSocket and Server-Sent Events support. Niquests provides both synchronous and asynchronous usage patterns, making it suitable for scripts, backend services, crawlers, API clients, and modern async Python applications. It aims to preserve compatibility with common Requests ecosystem tools while expanding what Python HTTP clients can do. It is especially useful for developers who like Requests but need stronger protocol coverage, async support, and a more actively evolving feature set.
Features
- Requests-compatible API
- Automatic HTTP/1.1, HTTP/2, and HTTP/3 support
- Synchronous and asynchronous clients
- WebSocket support
- Compatibility with Requests testing tools
- Server-Sent Events support