Release v0.8.1. (Installation)
Requests is an ISC Licensed HTTP library, written in Python, for human beings.
Most existing Python modules for sending HTTP requests are extremely verbose and cumbersome. Python’s builtin urllib2 module provides most of the HTTP capabilities you should need, but the api is thoroughly broken. It requires an enormous amount of work (even method overrides) to perform the simplest of tasks.
Things shouldn’t be this way. Not in Python.
>>> r = requests.get('https://api.github.com', auth=('user', 'pass'))
>>> r.status_code
204
>>> r.headers['content-type']
'application/json'
>>> r.content
...
See the same code, without Requests.
Requests allows you to send HEAD, GET, POST, PUT, PATCH, and DELETE HTTP requests. You can add headers, form data, multipart files, and parameters with simple Python dictionaries, and access the response data in the same way. It’s powered by httplib and urllib3, and it strives to be as elegant and approachable as possible.
The Washington Post, Twitter, Inc, a U.S. Federal Institution, NIH, Readability, and Work for Pie use Requests internally.
This part of the documentation, which is mostly prose, begins with some background information about Requests, then focuses on step-by-step instructions for getting the most out of Requests.
This part of the documentation, which is mostly prose, details the Requests ecosystem and community.
If you are looking for information on a specific function, class or method, this part of the documentation is for you.
If you want to contribute to the project, this part of the documentation is for you.