Skip to main content

Python HTTP for Humans.

Project description

Requests

Version Supported Versions Downloads Contributors

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 Python packages today, pulling in around 30M downloads / week— according to GitHub, Requests is currently depended upon by 1,000,000+ repositories. You may certainly put your trust in this code.

Installing Requests and Supported Versions

Requests is available on PyPI:

$ python -m pip install requests

Requests officially supports Python 3.10+.

Supported Features & Best–Practices

Requests is ready for the demands of building robust and reliable HTTP–speaking applications, for the needs of today.

  • Keep-Alive & Connection Pooling
  • International Domains and URLs
  • Sessions with Cookie Persistence
  • Browser-style TLS/SSL Verification
  • Basic & Digest Authentication
  • Familiar dict–like Cookies
  • Automatic Content Decompression and Decoding
  • Multi-part File Uploads
  • SOCKS Proxy Support
  • Connection Timeouts
  • Streaming Downloads
  • Automatic honoring of .netrc
  • Chunked HTTP Requests

API Reference and User Guide available on Read the Docs

Read the Docs

Cloning the repository

When cloning the Requests repository, you may need to add the -c fetch.fsck.badTimezone=ignore flag to avoid an error about a bad commit timestamp (see this issue for more background):

git clone -c fetch.fsck.badTimezone=ignore https://github.com/psf/requests.git

You can also apply this setting to your global Git config:

git config --global fetch.fsck.badTimezone ignore

Kenneth Reitz Python Software Foundation

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

requests-2.33.1.tar.gz (134.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

requests-2.33.1-py3-none-any.whl (64.9 kB view details)

Uploaded Python 3

File details

Details for the file requests-2.33.1.tar.gz.

File metadata

  • Download URL: requests-2.33.1.tar.gz
  • Upload date:
  • Size: 134.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for requests-2.33.1.tar.gz
Algorithm Hash digest
SHA256 18817f8c57c6263968bc123d237e3b8b08ac046f5456bd1e307ee8f4250d3517
MD5 ebc3b42b51c6245524345d170e5d4c50
BLAKE2b-256 5fa498b9c7c6428a668bf7e42ebb7c79d576a1c3c1e3ae2d47e674b468388871

See more details on using hashes here.

Provenance

The following attestation bundles were made for requests-2.33.1.tar.gz:

Publisher: publish.yml on psf/requests

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file requests-2.33.1-py3-none-any.whl.

File metadata

  • Download URL: requests-2.33.1-py3-none-any.whl
  • Upload date:
  • Size: 64.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for requests-2.33.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4e6d1ef462f3626a1f0a0a9c42dd93c63bad33f9f1c1937509b8c5c8718ab56a
MD5 8dc07a23ed07c964a3f87cef906b8988
BLAKE2b-256 d78e7540e8a2036f79a125c1d2ebadf69ed7901608859186c856fa0388ef4197

See more details on using hashes here.

Provenance

The following attestation bundles were made for requests-2.33.1-py3-none-any.whl:

Publisher: publish.yml on psf/requests

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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