Skip to content
Working repository for adding async support to urllib3
Branch: bleach-spike
Clone or download
Pull request Compare This branch is 567 commits ahead, 43 commits behind urllib3:master.
Latest commit 8b81d0b May 22, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
_appveyor Test AppVeyor Oct 23, 2016
_travis Merge commit 'cbe5732a' into merge-from-master-2018-11 May 19, 2019
demo demo: specify backends using the new API Jun 27, 2018
dummyserver Merge branch 'master' into merge-master-nopy26 Sep 3, 2018
src/urllib3 Remove unreachable line within to_input_type() (urllib3#1551) May 20, 2019
test Merge commit 'adb358f8' into merge-from-master-2018-12 May 20, 2019
.coveragerc Skip socks proxy tests. (#78) Apr 19, 2019
.gitignore Move urllib3 into src/urllib3 Jun 28, 2018
.travis.yml Stop testing Python 3.5 on macOS May 12, 2019
CHANGES.rst Merge commit 'adb358f8' into merge-from-master-2018-12 May 20, 2019
CONTRIBUTORS.txt Remove Authorization headers regardless of case on cross-origin redir… Dec 29, 2018
LICENSE.txt Update license year range to 2016 Jan 26, 2016 Include pyproject.toml in sdist Nov 26, 2018
Makefile clarify how to setup a virtual env and run a small number of tests (u… Apr 8, 2018
README.rst Merge commit 'adb358f8' into merge-from-master-2018-12 May 20, 2019
appveyor.yml Merge commit 'f8d1c787' into merge-from-master-2018-10 May 17, 2019 codecov: fix paths before sending coverage Dec 11, 2018
codecov.yml Run more tests and improve coverage Jul 2, 2018
dev-requirements.txt Bump versions to fix Windows 3.7 build May 17, 2019
pyproject.toml Ensure setuptools.build_meta is available Nov 26, 2018 Fix release script Jun 11, 2016
setup.cfg Merge commit 'adb358f8' into merge-from-master-2018-12 May 20, 2019 Merge commit 'adb358f8' into merge-from-master-2018-12 May 20, 2019
tox.ini Merge commit 'adb358f8' into merge-from-master-2018-12 May 20, 2019



Build status on Travis Build status on AppVeyor Documentation Status Coverage Status PyPI version Gitter Tidelift Dependencies

urllib3 is a powerful, sanity-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:

Currently not supporting SOCKS proxies, pyOpenSSL and SecureTransport.

  • 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 and deflate encoding.
  • Proxy support for HTTP and SOCKS.
  • 100% test coverage.

urllib3 is powerful and easy to use:

>>> import urllib3
>>> http = urllib3.PoolManager()
>>> r = http.request('GET', '')
>>> r.status
'User-agent: *\nDisallow: /deny\n'


urllib3 can be installed with pip:

$ pip install urllib3

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

$ git clone git://
$ python install


urllib3 has usage and reference documentation at


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.




Tidelift 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.

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

Sponsors include:

  • Google Cloud Platform (2018-present), sponsors @theacodes's work on an ongoing basis
  • Abbott (2018-present), sponsors @sethmlarson's work on an ongoing basis
  • Akamai (2017-present), sponsors @haikuginger's work on an ongoing basis
  • Hewlett Packard Enterprise (2016-2017), sponsored @Lukasa’s work on urllib3
You can’t perform that action at this time.