skillfed

requests

Python HTTP for Humans.

requests Permissive license Apache-2.0 Active 54,259 v2.34.2 released

Install

requests on PyPI

pip

pip install requests

uv

uv add requests

poetry

poetry add requests

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 4 — charset_normalizer, idna, urllib3, certifi
Maintenance actively maintained — 91 days since the last release
Last repo commit
First released
Popularity one of the 100 most-downloaded packages on PyPI (30-day window, as of 2026-08-13)
Known vulnerabilities none known (OSV.dev, checked 2026-08-13)

Evidence: requests-2.34.2-py3-none-any.whl

Development Status :: 5 - Production/StableEnvironment :: Web EnvironmentIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.15Programming Language :: Python :: Free Threading :: 2 - BetaProgramming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPyTopic :: Internet :: WWW/HTTPTopic :: Software Development :: Libraries

About requests

from the package's own PyPI description — quoted content, verbatim

Requests

Version (image) Supported Versions (image) Downloads (image) Contributors (image) Documentation (image)

Requests is a simple, yet elegant, HTTP library.

>>> import requests
>>> r = requests.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, ...}

Requests allows you to send HTTP/1.1 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!

Requests is one of the most downloaded...

Read as markdown · JSON record · Source repository · Docs

AI interpretation — verify before relying

AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page

Requests is a human-friendly HTTP library for sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, redirects, and content encoding.

Low install friction with four lightweight runtime dependencies (charset_normalizer, idna, urllib3, certifi). Actively maintained with last commit on 2026-08-11 and 91 days since the latest release—solid maintenance signal.

Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions; attribution and license notice are required.

Usage

pip install requests

import requests
r = requests.get('https://httpbin.org/basic-auth/user/pass', auth=('user', 'pass'))
print(r.status_code, r.json())

Requires Python 3.10 or later.

Verdict: Requests is a production-stable, top-100 PyPI package with active maintenance, zero known vulnerabilities, and permissive licensing. Its low install friction and broad ecosystem adoption make it a reliable choice for HTTP operations in Python 3.10+.

http client library pythonsend http requestsrest api clientpython http librarysimple http requestshttp session managementbasic authentication http

Similar packages