Update 2025-04-24_11:44:19
This commit is contained in:
@ -0,0 +1 @@
|
||||
pip
|
@ -0,0 +1,154 @@
|
||||
Metadata-Version: 2.4
|
||||
Name: urllib3
|
||||
Version: 2.4.0
|
||||
Summary: HTTP library with thread-safe connection pooling, file post, and more.
|
||||
Project-URL: Changelog, https://github.com/urllib3/urllib3/blob/main/CHANGES.rst
|
||||
Project-URL: Documentation, https://urllib3.readthedocs.io
|
||||
Project-URL: Code, https://github.com/urllib3/urllib3
|
||||
Project-URL: Issue tracker, https://github.com/urllib3/urllib3/issues
|
||||
Author-email: Andrey Petrov <andrey.petrov@shazow.net>
|
||||
Maintainer-email: Seth Michael Larson <sethmichaellarson@gmail.com>, Quentin Pradet <quentin@pradet.me>, Illia Volochii <illia.volochii@gmail.com>
|
||||
License-Expression: MIT
|
||||
License-File: LICENSE.txt
|
||||
Keywords: filepost,http,httplib,https,pooling,ssl,threadsafe,urllib
|
||||
Classifier: Environment :: Web Environment
|
||||
Classifier: Intended Audience :: Developers
|
||||
Classifier: Operating System :: OS Independent
|
||||
Classifier: Programming Language :: Python
|
||||
Classifier: Programming Language :: Python :: 3
|
||||
Classifier: Programming Language :: Python :: 3 :: Only
|
||||
Classifier: Programming Language :: Python :: 3.9
|
||||
Classifier: Programming Language :: Python :: 3.10
|
||||
Classifier: Programming Language :: Python :: 3.11
|
||||
Classifier: Programming Language :: Python :: 3.12
|
||||
Classifier: Programming Language :: Python :: 3.13
|
||||
Classifier: Programming Language :: Python :: Implementation :: CPython
|
||||
Classifier: Programming Language :: Python :: Implementation :: PyPy
|
||||
Classifier: Topic :: Internet :: WWW/HTTP
|
||||
Classifier: Topic :: Software Development :: Libraries
|
||||
Requires-Python: >=3.9
|
||||
Provides-Extra: brotli
|
||||
Requires-Dist: brotli>=1.0.9; (platform_python_implementation == 'CPython') and extra == 'brotli'
|
||||
Requires-Dist: brotlicffi>=0.8.0; (platform_python_implementation != 'CPython') and extra == 'brotli'
|
||||
Provides-Extra: h2
|
||||
Requires-Dist: h2<5,>=4; extra == 'h2'
|
||||
Provides-Extra: socks
|
||||
Requires-Dist: pysocks!=1.5.7,<2.0,>=1.5.6; extra == 'socks'
|
||||
Provides-Extra: zstd
|
||||
Requires-Dist: zstandard>=0.18.0; extra == 'zstd'
|
||||
Description-Content-Type: text/markdown
|
||||
|
||||
<h1 align="center">
|
||||
|
||||

|
||||
|
||||
</h1>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://pypi.org/project/urllib3"><img alt="PyPI Version" src="https://img.shields.io/pypi/v/urllib3.svg?maxAge=86400" /></a>
|
||||
<a href="https://pypi.org/project/urllib3"><img alt="Python Versions" src="https://img.shields.io/pypi/pyversions/urllib3.svg?maxAge=86400" /></a>
|
||||
<a href="https://discord.gg/urllib3"><img alt="Join our Discord" src="https://img.shields.io/discord/756342717725933608?color=%237289da&label=discord" /></a>
|
||||
<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>
|
||||
<a href="https://github.com/urllib3/urllib3/actions/workflows/ci.yml?query=branch%3Amain"><img alt="Build Status on GitHub" src="https://github.com/urllib3/urllib3/actions/workflows/ci.yml/badge.svg?branch:main&workflow:CI" /></a>
|
||||
<a href="https://urllib3.readthedocs.io"><img alt="Documentation Status" src="https://readthedocs.org/projects/urllib3/badge/?version=latest" /></a><br>
|
||||
<a href="https://deps.dev/pypi/urllib3"><img alt="OpenSSF Scorecard" src="https://api.securityscorecards.dev/projects/github.com/urllib3/urllib3/badge" /></a>
|
||||
<a href="https://slsa.dev"><img alt="SLSA 3" src="https://slsa.dev/images/gh-badge-level3.svg" /></a>
|
||||
<a href="https://bestpractices.coreinfrastructure.org/projects/6227"><img alt="CII Best Practices" src="https://bestpractices.coreinfrastructure.org/projects/6227/badge" /></a>
|
||||
</p>
|
||||
|
||||
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:
|
||||
|
||||
```python3
|
||||
>>> import urllib3
|
||||
>>> resp = urllib3.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](https://pip.pypa.io):
|
||||
|
||||
```bash
|
||||
$ python -m pip install urllib3
|
||||
```
|
||||
|
||||
Alternatively, you can grab the latest source code from [GitHub](https://github.com/urllib3/urllib3):
|
||||
|
||||
```bash
|
||||
$ git clone https://github.com/urllib3/urllib3.git
|
||||
$ cd urllib3
|
||||
$ pip install .
|
||||
```
|
||||
|
||||
|
||||
## Documentation
|
||||
|
||||
urllib3 has usage and reference documentation at [urllib3.readthedocs.io](https://urllib3.readthedocs.io).
|
||||
|
||||
|
||||
## Community
|
||||
|
||||
urllib3 has a [community Discord channel](https://discord.gg/urllib3) for asking questions and
|
||||
collaborating with other contributors. Drop by and say hello 👋
|
||||
|
||||
|
||||
## Contributing
|
||||
|
||||
urllib3 happily accepts contributions. Please see our
|
||||
[contributing documentation](https://urllib3.readthedocs.io/en/latest/contributing.html)
|
||||
for some tips on getting started.
|
||||
|
||||
|
||||
## Security Disclosures
|
||||
|
||||
To report a security vulnerability, please use the
|
||||
[Tidelift security contact](https://tidelift.com/security).
|
||||
Tidelift will coordinate the fix and disclosure with maintainers.
|
||||
|
||||
|
||||
## Maintainers
|
||||
|
||||
- [@sethmlarson](https://github.com/sethmlarson) (Seth M. Larson)
|
||||
- [@pquentin](https://github.com/pquentin) (Quentin Pradet)
|
||||
- [@illia-v](https://github.com/illia-v) (Illia Volochii)
|
||||
- [@theacodes](https://github.com/theacodes) (Thea Flowers)
|
||||
- [@haikuginger](https://github.com/haikuginger) (Jess Shapiro)
|
||||
- [@lukasa](https://github.com/lukasa) (Cory Benfield)
|
||||
- [@sigmavirus24](https://github.com/sigmavirus24) (Ian Stapleton Cordasco)
|
||||
- [@shazow](https://github.com/shazow) (Andrey Petrov)
|
||||
|
||||
👋
|
||||
|
||||
|
||||
## Sponsorship
|
||||
|
||||
If your company benefits from this library, please consider [sponsoring its
|
||||
development](https://urllib3.readthedocs.io/en/latest/sponsors.html).
|
||||
|
||||
|
||||
## For Enterprise
|
||||
|
||||
Professional support for urllib3 is available as part of the [Tidelift
|
||||
Subscription][1]. 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.
|
||||
|
||||
[1]: https://tidelift.com/subscription/pkg/pypi-urllib3?utm_source=pypi-urllib3&utm_medium=referral&utm_campaign=readme
|
@ -0,0 +1,79 @@
|
||||
urllib3-2.4.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
|
||||
urllib3-2.4.0.dist-info/METADATA,sha256=5BVhBpx5cN1xNfUe-sQ0BvBbMfaEsQ09LDq9rSQTZYo,6461
|
||||
urllib3-2.4.0.dist-info/RECORD,,
|
||||
urllib3-2.4.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
||||
urllib3-2.4.0.dist-info/licenses/LICENSE.txt,sha256=Ew46ZNX91dCWp1JpRjSn2d8oRGnehuVzIQAmgEHj1oY,1093
|
||||
urllib3/__init__.py,sha256=JMo1tg1nIV1AeJ2vENC_Txfl0e5h6Gzl9DGVk1rWRbo,6979
|
||||
urllib3/__pycache__/__init__.cpython-311.pyc,,
|
||||
urllib3/__pycache__/_base_connection.cpython-311.pyc,,
|
||||
urllib3/__pycache__/_collections.cpython-311.pyc,,
|
||||
urllib3/__pycache__/_request_methods.cpython-311.pyc,,
|
||||
urllib3/__pycache__/_version.cpython-311.pyc,,
|
||||
urllib3/__pycache__/connection.cpython-311.pyc,,
|
||||
urllib3/__pycache__/connectionpool.cpython-311.pyc,,
|
||||
urllib3/__pycache__/exceptions.cpython-311.pyc,,
|
||||
urllib3/__pycache__/fields.cpython-311.pyc,,
|
||||
urllib3/__pycache__/filepost.cpython-311.pyc,,
|
||||
urllib3/__pycache__/poolmanager.cpython-311.pyc,,
|
||||
urllib3/__pycache__/response.cpython-311.pyc,,
|
||||
urllib3/_base_connection.py,sha256=T1cwH3RhzsrBh6Bz3AOGVDboRsE7veijqZPXXQTR2Rg,5568
|
||||
urllib3/_collections.py,sha256=tM7c6J1iKtWZYV_QGYb8-r7Nr1524Dehnsa0Ufh6_mU,17295
|
||||
urllib3/_request_methods.py,sha256=gCeF85SO_UU4WoPwYHIoz_tw-eM_EVOkLFp8OFsC7DA,9931
|
||||
urllib3/_version.py,sha256=KyHVhKcn4Ob8_JP09Buz8x5uB4b7RJZLl3FBlZ8sWSY,511
|
||||
urllib3/connection.py,sha256=dsVIUaPrOdATuO9OGnF5GzMhlVKlAw-2qH9FWYuic4s,39875
|
||||
urllib3/connectionpool.py,sha256=ZEhudsa8BIubD2M0XoxBBsjxbsXwMgUScH7oQ9i-j1Y,43371
|
||||
urllib3/contrib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
||||
urllib3/contrib/__pycache__/__init__.cpython-311.pyc,,
|
||||
urllib3/contrib/__pycache__/pyopenssl.cpython-311.pyc,,
|
||||
urllib3/contrib/__pycache__/socks.cpython-311.pyc,,
|
||||
urllib3/contrib/emscripten/__init__.py,sha256=u6KNgzjlFZbuAAXa_ybCR7gQ71VJESnF-IIdDA73brw,733
|
||||
urllib3/contrib/emscripten/__pycache__/__init__.cpython-311.pyc,,
|
||||
urllib3/contrib/emscripten/__pycache__/connection.cpython-311.pyc,,
|
||||
urllib3/contrib/emscripten/__pycache__/fetch.cpython-311.pyc,,
|
||||
urllib3/contrib/emscripten/__pycache__/request.cpython-311.pyc,,
|
||||
urllib3/contrib/emscripten/__pycache__/response.cpython-311.pyc,,
|
||||
urllib3/contrib/emscripten/connection.py,sha256=j8DR_flE7hsoFhNfiqHLiaPaCsVbzG44jgahwvsQ52A,8771
|
||||
urllib3/contrib/emscripten/emscripten_fetch_worker.js,sha256=CDfYF_9CDobtx2lGidyJ1zjDEvwNT5F-dchmVWXDh0E,3655
|
||||
urllib3/contrib/emscripten/fetch.py,sha256=Li6sUnFuFog0fBiahk1Y0C0tdn5fxmj4ucDofPWFiXc,22867
|
||||
urllib3/contrib/emscripten/request.py,sha256=mL28szy1KvE3NJhWor5jNmarp8gwplDU-7gwGZY5g0Q,566
|
||||
urllib3/contrib/emscripten/response.py,sha256=7oVPENYZHuzEGRtG40HonpH5tAIYHsGcHPbJt2Z0U-Y,9507
|
||||
urllib3/contrib/pyopenssl.py,sha256=Xp5Ym05VgXGhHa0C4wlutvHxY8SnKSS6WLb2t5Miu0s,19720
|
||||
urllib3/contrib/socks.py,sha256=-iardc61GypsJzD6W6yuRS7KVCyfowcQrl_719H7lIM,7549
|
||||
urllib3/exceptions.py,sha256=pziumHf0Vwx3z4gvUy7ou8nlM2yIYX0N3l3znEdeF5U,9938
|
||||
urllib3/fields.py,sha256=FCf7UULSkf10cuTRUWTQESzxgl1WT8e2aCy3kfyZins,10829
|
||||
urllib3/filepost.py,sha256=U8eNZ-mpKKHhrlbHEEiTxxgK16IejhEa7uz42yqA_dI,2388
|
||||
urllib3/http2/__init__.py,sha256=xzrASH7R5ANRkPJOot5lGnATOq3KKuyXzI42rcnwmqs,1741
|
||||
urllib3/http2/__pycache__/__init__.cpython-311.pyc,,
|
||||
urllib3/http2/__pycache__/connection.cpython-311.pyc,,
|
||||
urllib3/http2/__pycache__/probe.cpython-311.pyc,,
|
||||
urllib3/http2/connection.py,sha256=4DB0DkZEC3yIkhGjUDIHB17wrYCLaL0Ag5bDW2_mGPI,12694
|
||||
urllib3/http2/probe.py,sha256=nnAkqbhAakOiF75rz7W0udZ38Eeh_uD8fjV74N73FEI,3014
|
||||
urllib3/poolmanager.py,sha256=2_L2AjVDgoQ0qBmYbX9u9QqyU1u5J37zQbtv_-ueZQA,22913
|
||||
urllib3/py.typed,sha256=UaCuPFa3H8UAakbt-5G8SPacldTOGvJv18pPjUJ5gDY,93
|
||||
urllib3/response.py,sha256=PBW5ZnK3kYeq0fqeUYywyASKQWK7uRzSa-HgDBzZedU,45190
|
||||
urllib3/util/__init__.py,sha256=-qeS0QceivazvBEKDNFCAI-6ACcdDOE4TMvo7SLNlAQ,1001
|
||||
urllib3/util/__pycache__/__init__.cpython-311.pyc,,
|
||||
urllib3/util/__pycache__/connection.cpython-311.pyc,,
|
||||
urllib3/util/__pycache__/proxy.cpython-311.pyc,,
|
||||
urllib3/util/__pycache__/request.cpython-311.pyc,,
|
||||
urllib3/util/__pycache__/response.cpython-311.pyc,,
|
||||
urllib3/util/__pycache__/retry.cpython-311.pyc,,
|
||||
urllib3/util/__pycache__/ssl_.cpython-311.pyc,,
|
||||
urllib3/util/__pycache__/ssl_match_hostname.cpython-311.pyc,,
|
||||
urllib3/util/__pycache__/ssltransport.cpython-311.pyc,,
|
||||
urllib3/util/__pycache__/timeout.cpython-311.pyc,,
|
||||
urllib3/util/__pycache__/url.cpython-311.pyc,,
|
||||
urllib3/util/__pycache__/util.cpython-311.pyc,,
|
||||
urllib3/util/__pycache__/wait.cpython-311.pyc,,
|
||||
urllib3/util/connection.py,sha256=JjO722lzHlzLXPTkr9ZWBdhseXnMVjMSb1DJLVrXSnQ,4444
|
||||
urllib3/util/proxy.py,sha256=seP8-Q5B6bB0dMtwPj-YcZZQ30vHuLqRu-tI0JZ2fzs,1148
|
||||
urllib3/util/request.py,sha256=qSwxEsJJ-9DUfFDEAZIgQe8sgyywKY0o3faH3ixi3i8,8218
|
||||
urllib3/util/response.py,sha256=vQE639uoEhj1vpjEdxu5lNIhJCSUZkd7pqllUI0BZOA,3374
|
||||
urllib3/util/retry.py,sha256=bj-2YUqblxLlv8THg5fxww-DM54XCbjgZXIQ71XioCY,18459
|
||||
urllib3/util/ssl_.py,sha256=oqb0OXHb09LFDqcWI84KLMxg4Y3GvoelPj2Tf179IwA,19786
|
||||
urllib3/util/ssl_match_hostname.py,sha256=Di7DU7zokoltapT_F0Sj21ffYxwaS_cE5apOtwueeyA,5845
|
||||
urllib3/util/ssltransport.py,sha256=Ez4O8pR_vT8dan_FvqBYS6dgDfBXEMfVfrzcdUoWfi4,8847
|
||||
urllib3/util/timeout.py,sha256=4eT1FVeZZU7h7mYD1Jq2OXNe4fxekdNvhoWUkZusRpA,10346
|
||||
urllib3/util/url.py,sha256=WRh-TMYXosmgp8m8lT4H5spoHw5yUjlcMCfU53AkoAs,15205
|
||||
urllib3/util/util.py,sha256=j3lbZK1jPyiwD34T8IgJzdWEZVT-4E-0vYIJi9UjeNA,1146
|
||||
urllib3/util/wait.py,sha256=_ph8IrUR3sqPqi0OopQgJUlH4wzkGeM5CiyA7XGGtmI,4423
|
@ -0,0 +1,4 @@
|
||||
Wheel-Version: 1.0
|
||||
Generator: hatchling 1.27.0
|
||||
Root-Is-Purelib: true
|
||||
Tag: py3-none-any
|
@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2008-2020 Andrey Petrov and contributors.
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
Reference in New Issue
Block a user