Skip to main content

Python HTTP for Humans.

Project description

Niquests Logo

Niquests is a simple, yet elegant, HTTP library. It is a drop-in replacement for Requests that is no longer under feature freeze.

Niquests, is the “Safest, Fastest*, Easiest, and Most advanced” Python HTTP Client. Production Ready!

✔️ Try before you switch: See Multiplexed in Action
📖 See why you should switch: Read about 10 reasons why

>>> import niquests
>>> r = niquests.get('https://httpbin.org/basic-auth/user/pass', auth=('user', 'pass'))
>>> r.status_code
200
>>> r.headers['content-type']
'application/json; charset=utf8'
>>> r.encoding
'utf-8'
>>> r.text
'{"authenticated": true, ...'
>>> r.json()
{'authenticated': True, ...}
>>> r
<Response HTTP/2 [200]>
>>> r.ocsp_verified
True

Niquests allows you to send HTTP requests extremely easily. There’s no need to manually add query strings to your URLs, or to form-encode your PUT & POST data — but nowadays, just use the json method!

Downloads Supported Versions

Installing Niquests and Supported Versions

Niquests is available on PyPI:

$ python -m pip install niquests

Niquests officially supports Python or PyPy 3.7+.

Supported Features & Best–Practices

Niquests is ready for the demands of building robust and reliable HTTP–speaking applications, for the needs of today.

  • Automatic Content Decompression and Decoding
  • OS truststore by default, no more certifi!
  • OCSP Certificate Revocation Verification
  • In-memory certificates (CAs, and mTLS)
  • Browser-style TLS/SSL Verification
  • Sessions with Cookie Persistence
  • Keep-Alive & Connection Pooling
  • International Domains and URLs
  • Automatic honoring of .netrc
  • Basic & Digest Authentication
  • Familiar dict–like Cookies
  • Object-oriented headers
  • Multi-part File Uploads
  • Chunked HTTP Requests
  • Fully type-annotated!
  • SOCKS Proxy Support
  • Connection Timeouts
  • Streaming Downloads
  • HTTP/2 by default
  • HTTP/3 over QUIC
  • Multiplexed!
  • Async!

Why did we pursue this?

For many years now, Requests has been frozen and blocked millions of developers, left in a vegetative state regarding evolutions in the field.

We don't have to reinvent the wheel all over again, HTTP client Requests is well established and really plaisant in its usage. We believe that Requests have the most inclusive, and developer friendly interfaces. We intend to keep it that way. As long as we can, long live Niquests!

How about a nice refresher with a mere CTRL+H import requests to import niquests as requests ?

💼 For Enterprise

Professional support for Niquests is available as part of the Tidelift Subscription. Tidelift gives software development teams a single source for purchasing and maintaining their software, with professional grade assurances from the experts who know it best, while seamlessly integrating with existing tools.


(*) performance measured when leveraging a multiplexed connection with or without uses of any form of concurrency as of november 2023. The research compared httpx, requests, aiohttp against niquests.


Kenneth Reitz

Project details


Release history Release notifications | RSS feed

This version

3.3.4

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

niquests-3.3.4.tar.gz (490.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

niquests-3.3.4-py3-none-any.whl (91.8 kB view details)

Uploaded Python 3

File details

Details for the file niquests-3.3.4.tar.gz.

File metadata

  • Download URL: niquests-3.3.4.tar.gz
  • Upload date:
  • Size: 490.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for niquests-3.3.4.tar.gz
Algorithm Hash digest
SHA256 49ec0d9f53ccfb4a2fdf18b446779ebcb3b65c5ef3fc73417b1020bc5523a5f0
MD5 277d05ea2f86f28a15ed7d4479985737
BLAKE2b-256 237f46f60dcf8577cf1b95e39d1cb67da253e9b1a92a2e65718e9b11b27e115a

See more details on using hashes here.

File details

Details for the file niquests-3.3.4-py3-none-any.whl.

File metadata

  • Download URL: niquests-3.3.4-py3-none-any.whl
  • Upload date:
  • Size: 91.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for niquests-3.3.4-py3-none-any.whl
Algorithm Hash digest
SHA256 a00dc82606dc1da2499b7b2116dd3b17a4901f9abdc9d3f9f8a45015ba225b2a
MD5 bf540186edc12dbfc198de28fdf7ae32
BLAKE2b-256 a576fdd678d6bd77b6b5cefd67437b65b0fd91a6f08a8a934d074e882e2d9f1b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page