Skip to main content

HTTP library with thread-safe connection pooling, file post, and more.

Project description

urllib3

PyPI Version Python Versions Join our Discord Coverage Status Build Status on GitHub Documentation Status
OpenSSF Scorecard SLSA 3 CII Best Practices

urllib3 is a powerful, user-friendly HTTP client for Python. Much of the Python ecosystem already uses urllib3 and you should too. urllib3 brings many critical features that are missing from the Python standard libraries:

  • Thread safety.
  • Connection pooling.
  • Client-side SSL/TLS verification.
  • File uploads with multipart encoding.
  • Helpers for retrying requests and dealing with HTTP redirects.
  • Support for gzip, deflate, brotli, and zstd encoding.
  • Proxy support for HTTP and SOCKS.
  • 100% test coverage.

urllib3 is powerful and easy to use:

>>> import urllib3
>>> http = urllib3.PoolManager()
>>> resp = http.request("GET", "http://httpbin.org/robots.txt")
>>> resp.status
200
>>> resp.data
b"User-agent: *\nDisallow: /deny\n"

Installing

urllib3 can be installed with pip:

$ python -m pip install urllib3

Alternatively, you can grab the latest source code from GitHub:

$ git clone https://github.com/urllib3/urllib3.git
$ cd urllib3
$ pip install .

Documentation

urllib3 has usage and reference documentation at urllib3.readthedocs.io.

Community

urllib3 has a community Discord channel for asking questions and collaborating with other contributors. Drop by and say hello 👋

Contributing

urllib3 happily accepts contributions. Please see our contributing documentation for some tips on getting started.

Security Disclosures

To report a security vulnerability, please use the Tidelift security contact. Tidelift will coordinate the fix and disclosure with maintainers.

Maintainers

👋

Sponsorship

If your company benefits from this library, please consider sponsoring its development.

For Enterprise

Professional support for urllib3 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.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

urllib3-2.0.0a1.tar.gz (275.2 kB view details)

Uploaded Source

Built Distribution

urllib3-2.0.0a1-py3-none-any.whl (123.5 kB view details)

Uploaded Python 3

File details

Details for the file urllib3-2.0.0a1.tar.gz.

File metadata

  • Download URL: urllib3-2.0.0a1.tar.gz
  • Upload date:
  • Size: 275.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.15

File hashes

Hashes for urllib3-2.0.0a1.tar.gz
Algorithm Hash digest
SHA256 9e678d1a0aa9d0587e90416000869197e7ee2e339f12f21dff9a70b3f3ebeb4a
MD5 d383aa812f2b9bd3dfe0a76e9b779a0e
BLAKE2b-256 3b4307856ca0d221f7f19d4d900637a8ea7eb7b81efd14b3d0e4c65502e6cebc

See more details on using hashes here.

File details

Details for the file urllib3-2.0.0a1-py3-none-any.whl.

File metadata

  • Download URL: urllib3-2.0.0a1-py3-none-any.whl
  • Upload date:
  • Size: 123.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.15

File hashes

Hashes for urllib3-2.0.0a1-py3-none-any.whl
Algorithm Hash digest
SHA256 3b8890a2ba9fc21372c873d1d71b891ccda4af7e6f6f2e9086bb2b5c4b53e98d
MD5 84ea3b643d1b4496fb31e88b498ce9e3
BLAKE2b-256 cac743ae26e98bfa13a7080f44403771a4435424a6dca11f63fc04764bd05b99

See more details on using hashes here.

Supported by

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