Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/psf/requests
A simple, yet elegant, HTTP library.
https://github.com/psf/requests
client cookies forhumans http humans python python-requests requests
Last synced: 11 days ago
JSON representation
A simple, yet elegant, HTTP library.
- Host: GitHub
- URL: https://github.com/psf/requests
- Owner: psf
- License: apache-2.0
- Created: 2011-02-13T18:38:17.000Z (over 13 years ago)
- Default Branch: main
- Last Pushed: 2024-06-02T00:29:41.000Z (5 months ago)
- Last Synced: 2024-06-02T17:30:13.442Z (5 months ago)
- Topics: client, cookies, forhumans, http, humans, python, python-requests, requests
- Language: Python
- Homepage: https://requests.readthedocs.io/en/latest/
- Size: 12.5 MB
- Stars: 51,602
- Watchers: 1,333
- Forks: 9,225
- Open Issues: 229
-
Metadata Files:
- Readme: README.md
- Changelog: HISTORY.md
- Contributing: .github/CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: .github/CODE_OF_CONDUCT.md
- Security: .github/SECURITY.md
- Authors: AUTHORS.rst
Awesome Lists containing this project
- awesome - psf/requests - A simple, yet elegant, HTTP library. (Python)
- awesome-python-resources - GitHub - 5% open · ⏱️ 27.07.2022): (HTTP)
- best-of-web-python - GitHub - 5% open · ⏱️ 29.05.2024): (HTTP Clients)
- awesome-starred - requests - A simple, yet elegant HTTP library. (Python)
- awesome-github-star - requests
- awesome-starts - psf/requests - A simple, yet elegant HTTP library. (Python)
- awesome-http - Requests - activity/y/psf/requests) (Programming Languages / Python)
- StarryDivineSky - psf/requests
- awesome-github - python的http请求库
- jimsghstars - psf/requests - A simple, yet elegant, HTTP library. (Python)
README
# Requests
**Requests** is a simple, yet elegant, HTTP library.
```python
>>> 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](https://github.com/psf/requests/network/dependents?package_id=UGFja2FnZS01NzA4OTExNg%3D%3D) by `1,000,000+` repositories. You may certainly put your trust in this code.
[![Downloads](https://static.pepy.tech/badge/requests/month)](https://pepy.tech/project/requests)
[![Supported Versions](https://img.shields.io/pypi/pyversions/requests.svg)](https://pypi.org/project/requests)
[![Contributors](https://img.shields.io/github/contributors/psf/requests.svg)](https://github.com/psf/requests/graphs/contributors)## Installing Requests and Supported Versions
Requests is available on PyPI:
```console
$ python -m pip install requests
```Requests officially supports Python 3.8+.
## 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](https://requests.readthedocs.io)
[![Read the Docs](https://raw.githubusercontent.com/psf/requests/main/ext/ss.png)](https://requests.readthedocs.io)
## 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](https://github.com/psf/requests/issues/2690) for more background):```shell
git clone -c fetch.fsck.badTimezone=ignore https://github.com/psf/requests.git
```You can also apply this setting to your global Git config:
```shell
git config --global fetch.fsck.badTimezone ignore
```---
[![Kenneth Reitz](https://raw.githubusercontent.com/psf/requests/main/ext/kr.png)](https://kennethreitz.org) [![Python Software Foundation](https://raw.githubusercontent.com/psf/requests/main/ext/psf.png)](https://www.python.org/psf)