Skip to main content

Python HTTP for Humans.

Project description

Requests

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.

Downloads Supported Versions Contributors

Installing Requests and Supported Versions

Requests is available on PyPI:

$ python -m pip install requests

Requests officially supports Python 2.7 & 3.6+.

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 (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.27.1.tar.gz (106.8 kB view details)

Uploaded Source

Built Distribution

requests-2.27.1-py2.py3-none-any.whl (63.1 kB view details)

Uploaded Python 2Python 3

File details

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

File metadata

  • Download URL: requests-2.27.1.tar.gz
  • Upload date:
  • Size: 106.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.8.3 pkginfo/1.8.2 requests/2.27.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.6.6

File hashes

Hashes for requests-2.27.1.tar.gz
Algorithm Hash digest
SHA256 68d7c56fd5a8999887728ef304a6d12edc7be74f1cfa47714fc8b414525c9a61
MD5 bcc01b73974a305cc7c5b092e7d07004
BLAKE2b-256 60f326ff3767f099b73e0efa138a9998da67890793bfa475d8278f84a30fec77

See more details on using hashes here.

File details

Details for the file requests-2.27.1-py2.py3-none-any.whl.

File metadata

  • Download URL: requests-2.27.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 63.1 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.8.3 pkginfo/1.8.2 requests/2.27.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.6.6

File hashes

Hashes for requests-2.27.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 f22fa1e554c9ddfd16e6e41ac79759e17be9e492b3587efa038054674760e72d
MD5 435db0f122c83decd27524f690e89650
BLAKE2b-256 2d6108076519c80041bc0ffa1a8af0cbd3bf3e2b62af10435d269a9d0f40564d

See more details on using hashes here.

Supported by

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