jpayne@7
|
1 Metadata-Version: 2.1
|
jpayne@7
|
2 Name: urllib3
|
jpayne@7
|
3 Version: 2.2.1
|
jpayne@7
|
4 Summary: HTTP library with thread-safe connection pooling, file post, and more.
|
jpayne@7
|
5 Project-URL: Changelog, https://github.com/urllib3/urllib3/blob/main/CHANGES.rst
|
jpayne@7
|
6 Project-URL: Documentation, https://urllib3.readthedocs.io
|
jpayne@7
|
7 Project-URL: Code, https://github.com/urllib3/urllib3
|
jpayne@7
|
8 Project-URL: Issue tracker, https://github.com/urllib3/urllib3/issues
|
jpayne@7
|
9 Author-email: Andrey Petrov <andrey.petrov@shazow.net>
|
jpayne@7
|
10 Maintainer-email: Seth Michael Larson <sethmichaellarson@gmail.com>, Quentin Pradet <quentin@pradet.me>, Illia Volochii <illia.volochii@gmail.com>
|
jpayne@7
|
11 License-File: LICENSE.txt
|
jpayne@7
|
12 Keywords: filepost,http,httplib,https,pooling,ssl,threadsafe,urllib
|
jpayne@7
|
13 Classifier: Environment :: Web Environment
|
jpayne@7
|
14 Classifier: Intended Audience :: Developers
|
jpayne@7
|
15 Classifier: License :: OSI Approved :: MIT License
|
jpayne@7
|
16 Classifier: Operating System :: OS Independent
|
jpayne@7
|
17 Classifier: Programming Language :: Python
|
jpayne@7
|
18 Classifier: Programming Language :: Python :: 3
|
jpayne@7
|
19 Classifier: Programming Language :: Python :: 3 :: Only
|
jpayne@7
|
20 Classifier: Programming Language :: Python :: 3.8
|
jpayne@7
|
21 Classifier: Programming Language :: Python :: 3.9
|
jpayne@7
|
22 Classifier: Programming Language :: Python :: 3.10
|
jpayne@7
|
23 Classifier: Programming Language :: Python :: 3.11
|
jpayne@7
|
24 Classifier: Programming Language :: Python :: 3.12
|
jpayne@7
|
25 Classifier: Programming Language :: Python :: Implementation :: CPython
|
jpayne@7
|
26 Classifier: Programming Language :: Python :: Implementation :: PyPy
|
jpayne@7
|
27 Classifier: Topic :: Internet :: WWW/HTTP
|
jpayne@7
|
28 Classifier: Topic :: Software Development :: Libraries
|
jpayne@7
|
29 Requires-Python: >=3.8
|
jpayne@7
|
30 Provides-Extra: brotli
|
jpayne@7
|
31 Requires-Dist: brotli>=1.0.9; (platform_python_implementation == 'CPython') and extra == 'brotli'
|
jpayne@7
|
32 Requires-Dist: brotlicffi>=0.8.0; (platform_python_implementation != 'CPython') and extra == 'brotli'
|
jpayne@7
|
33 Provides-Extra: h2
|
jpayne@7
|
34 Requires-Dist: h2<5,>=4; extra == 'h2'
|
jpayne@7
|
35 Provides-Extra: socks
|
jpayne@7
|
36 Requires-Dist: pysocks!=1.5.7,<2.0,>=1.5.6; extra == 'socks'
|
jpayne@7
|
37 Provides-Extra: zstd
|
jpayne@7
|
38 Requires-Dist: zstandard>=0.18.0; extra == 'zstd'
|
jpayne@7
|
39 Description-Content-Type: text/markdown
|
jpayne@7
|
40
|
jpayne@7
|
41 <h1 align="center">
|
jpayne@7
|
42
|
jpayne@7
|
43 ![urllib3](https://github.com/urllib3/urllib3/raw/main/docs/_static/banner_github.svg)
|
jpayne@7
|
44
|
jpayne@7
|
45 </h1>
|
jpayne@7
|
46
|
jpayne@7
|
47 <p align="center">
|
jpayne@7
|
48 <a href="https://pypi.org/project/urllib3"><img alt="PyPI Version" src="https://img.shields.io/pypi/v/urllib3.svg?maxAge=86400" /></a>
|
jpayne@7
|
49 <a href="https://pypi.org/project/urllib3"><img alt="Python Versions" src="https://img.shields.io/pypi/pyversions/urllib3.svg?maxAge=86400" /></a>
|
jpayne@7
|
50 <a href="https://discord.gg/urllib3"><img alt="Join our Discord" src="https://img.shields.io/discord/756342717725933608?color=%237289da&label=discord" /></a>
|
jpayne@7
|
51 <a href="https://github.com/urllib3/urllib3/actions?query=workflow%3ACI"><img alt="Coverage Status" src="https://img.shields.io/badge/coverage-100%25-success" /></a>
|
jpayne@7
|
52 <a href="https://github.com/urllib3/urllib3/actions?query=workflow%3ACI"><img alt="Build Status on GitHub" src="https://github.com/urllib3/urllib3/workflows/CI/badge.svg" /></a>
|
jpayne@7
|
53 <a href="https://urllib3.readthedocs.io"><img alt="Documentation Status" src="https://readthedocs.org/projects/urllib3/badge/?version=latest" /></a><br>
|
jpayne@7
|
54 <a href="https://deps.dev/pypi/urllib3"><img alt="OpenSSF Scorecard" src="https://api.securityscorecards.dev/projects/github.com/urllib3/urllib3/badge" /></a>
|
jpayne@7
|
55 <a href="https://slsa.dev"><img alt="SLSA 3" src="https://slsa.dev/images/gh-badge-level3.svg" /></a>
|
jpayne@7
|
56 <a href="https://bestpractices.coreinfrastructure.org/projects/6227"><img alt="CII Best Practices" src="https://bestpractices.coreinfrastructure.org/projects/6227/badge" /></a>
|
jpayne@7
|
57 </p>
|
jpayne@7
|
58
|
jpayne@7
|
59 urllib3 is a powerful, *user-friendly* HTTP client for Python. Much of the
|
jpayne@7
|
60 Python ecosystem already uses urllib3 and you should too.
|
jpayne@7
|
61 urllib3 brings many critical features that are missing from the Python
|
jpayne@7
|
62 standard libraries:
|
jpayne@7
|
63
|
jpayne@7
|
64 - Thread safety.
|
jpayne@7
|
65 - Connection pooling.
|
jpayne@7
|
66 - Client-side SSL/TLS verification.
|
jpayne@7
|
67 - File uploads with multipart encoding.
|
jpayne@7
|
68 - Helpers for retrying requests and dealing with HTTP redirects.
|
jpayne@7
|
69 - Support for gzip, deflate, brotli, and zstd encoding.
|
jpayne@7
|
70 - Proxy support for HTTP and SOCKS.
|
jpayne@7
|
71 - 100% test coverage.
|
jpayne@7
|
72
|
jpayne@7
|
73 urllib3 is powerful and easy to use:
|
jpayne@7
|
74
|
jpayne@7
|
75 ```python3
|
jpayne@7
|
76 >>> import urllib3
|
jpayne@7
|
77 >>> resp = urllib3.request("GET", "http://httpbin.org/robots.txt")
|
jpayne@7
|
78 >>> resp.status
|
jpayne@7
|
79 200
|
jpayne@7
|
80 >>> resp.data
|
jpayne@7
|
81 b"User-agent: *\nDisallow: /deny\n"
|
jpayne@7
|
82 ```
|
jpayne@7
|
83
|
jpayne@7
|
84 ## Installing
|
jpayne@7
|
85
|
jpayne@7
|
86 urllib3 can be installed with [pip](https://pip.pypa.io):
|
jpayne@7
|
87
|
jpayne@7
|
88 ```bash
|
jpayne@7
|
89 $ python -m pip install urllib3
|
jpayne@7
|
90 ```
|
jpayne@7
|
91
|
jpayne@7
|
92 Alternatively, you can grab the latest source code from [GitHub](https://github.com/urllib3/urllib3):
|
jpayne@7
|
93
|
jpayne@7
|
94 ```bash
|
jpayne@7
|
95 $ git clone https://github.com/urllib3/urllib3.git
|
jpayne@7
|
96 $ cd urllib3
|
jpayne@7
|
97 $ pip install .
|
jpayne@7
|
98 ```
|
jpayne@7
|
99
|
jpayne@7
|
100
|
jpayne@7
|
101 ## Documentation
|
jpayne@7
|
102
|
jpayne@7
|
103 urllib3 has usage and reference documentation at [urllib3.readthedocs.io](https://urllib3.readthedocs.io).
|
jpayne@7
|
104
|
jpayne@7
|
105
|
jpayne@7
|
106 ## Community
|
jpayne@7
|
107
|
jpayne@7
|
108 urllib3 has a [community Discord channel](https://discord.gg/urllib3) for asking questions and
|
jpayne@7
|
109 collaborating with other contributors. Drop by and say hello 👋
|
jpayne@7
|
110
|
jpayne@7
|
111
|
jpayne@7
|
112 ## Contributing
|
jpayne@7
|
113
|
jpayne@7
|
114 urllib3 happily accepts contributions. Please see our
|
jpayne@7
|
115 [contributing documentation](https://urllib3.readthedocs.io/en/latest/contributing.html)
|
jpayne@7
|
116 for some tips on getting started.
|
jpayne@7
|
117
|
jpayne@7
|
118
|
jpayne@7
|
119 ## Security Disclosures
|
jpayne@7
|
120
|
jpayne@7
|
121 To report a security vulnerability, please use the
|
jpayne@7
|
122 [Tidelift security contact](https://tidelift.com/security).
|
jpayne@7
|
123 Tidelift will coordinate the fix and disclosure with maintainers.
|
jpayne@7
|
124
|
jpayne@7
|
125
|
jpayne@7
|
126 ## Maintainers
|
jpayne@7
|
127
|
jpayne@7
|
128 - [@sethmlarson](https://github.com/sethmlarson) (Seth M. Larson)
|
jpayne@7
|
129 - [@pquentin](https://github.com/pquentin) (Quentin Pradet)
|
jpayne@7
|
130 - [@illia-v](https://github.com/illia-v) (Illia Volochii)
|
jpayne@7
|
131 - [@theacodes](https://github.com/theacodes) (Thea Flowers)
|
jpayne@7
|
132 - [@haikuginger](https://github.com/haikuginger) (Jess Shapiro)
|
jpayne@7
|
133 - [@lukasa](https://github.com/lukasa) (Cory Benfield)
|
jpayne@7
|
134 - [@sigmavirus24](https://github.com/sigmavirus24) (Ian Stapleton Cordasco)
|
jpayne@7
|
135 - [@shazow](https://github.com/shazow) (Andrey Petrov)
|
jpayne@7
|
136
|
jpayne@7
|
137 👋
|
jpayne@7
|
138
|
jpayne@7
|
139
|
jpayne@7
|
140 ## Sponsorship
|
jpayne@7
|
141
|
jpayne@7
|
142 If your company benefits from this library, please consider [sponsoring its
|
jpayne@7
|
143 development](https://urllib3.readthedocs.io/en/latest/sponsors.html).
|
jpayne@7
|
144
|
jpayne@7
|
145
|
jpayne@7
|
146 ## For Enterprise
|
jpayne@7
|
147
|
jpayne@7
|
148 Professional support for urllib3 is available as part of the [Tidelift
|
jpayne@7
|
149 Subscription][1]. Tidelift gives software development teams a single source for
|
jpayne@7
|
150 purchasing and maintaining their software, with professional grade assurances
|
jpayne@7
|
151 from the experts who know it best, while seamlessly integrating with existing
|
jpayne@7
|
152 tools.
|
jpayne@7
|
153
|
jpayne@7
|
154 [1]: https://tidelift.com/subscription/pkg/pypi-urllib3?utm_source=pypi-urllib3&utm_medium=referral&utm_campaign=readme
|