Skip to main content

Python HTTP for Humans.

Project description

Niquests

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.

>>> 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
<Reponse 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
  • 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?

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!


(*) performance measured when leveraging a multiplexed connection with or without uses of any form of concurrency as of november 2023.


Kenneth Reitz Python Software Foundation

Project details


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.2.2.tar.gz (491.8 kB view hashes)

Uploaded Source

Built Distribution

niquests-3.2.2-py3-none-any.whl (90.1 kB view hashes)

Uploaded Python 3

Supported by

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