aboutsummaryrefslogtreecommitdiff
path: root/README.rst
diff options
context:
space:
mode:
authorSVN-Git Migration <python-modules-team@lists.alioth.debian.org>2015-10-08 13:41:15 -0700
committerSVN-Git Migration <python-modules-team@lists.alioth.debian.org>2015-10-08 13:41:15 -0700
commit4fad8c1375c73a3d4483fe78e4534c7dabc453f5 (patch)
treecd9f3e8c6811892a2cea932b9d1d97b41945b712 /README.rst
downloadpython-requests-4fad8c1375c73a3d4483fe78e4534c7dabc453f5.tar
python-requests-4fad8c1375c73a3d4483fe78e4534c7dabc453f5.tar.gz
Imported Upstream version 0.4.1
Diffstat (limited to 'README.rst')
-rw-r--r--README.rst156
1 files changed, 156 insertions, 0 deletions
diff --git a/README.rst b/README.rst
new file mode 100644
index 0000000..ce4eb58
--- /dev/null
+++ b/README.rst
@@ -0,0 +1,156 @@
+Requests: The Simple (e.g. usable) HTTP Module
+==============================================
+
+Most existing Python modules for dealing HTTP requests are insane. I have to look up *everything* that I want to do. Most of my worst Python experiences are a result of the various built-in HTTP libraries (yes, even worse than Logging).
+
+But this one's different. This one's going to be awesome. And simple.
+
+Really simple.
+
+Features
+--------
+
+- Extremely simple GET, HEAD, POST, PUT, DELETE Requests
+ + Simple HTTP Header Request Attachment
+ + Simple Data/Params Request Attachment
+ + Simple Multipart File Uploads
+ + CookieJar Support
+ + Redirection History
+ + Redirection Recursion Urllib Fix
+ + Auto Decompression of GZipped Content
+ + Unicode URL Support
+
+- Simple Authentication
+ + Simple URL + HTTP Auth Registry
+
+
+Usage
+-----
+
+It couldn't be simpler. ::
+
+ >>> import requests
+ >>> r = requests.get('http://google.com')
+
+
+HTTPS? Basic Authentication? ::
+
+ >>> r = requests.get('https://convore.com/api/account/verify.json')
+ >>> r.status_code
+ 401
+
+
+Uh oh, we're not authorized! Let's add authentication. ::
+
+ >>> conv_auth = ('requeststest', 'requeststest')
+ >>> r = requests.get('https://convore.com/api/account/verify.json', auth=conv_auth)
+
+ >>> r.status_code
+ 200
+
+ >>> r.headers['content-type']
+ 'application/json'
+
+ >>> r.content
+ '{"username": "requeststest", "url": "/users/requeststest/", "id": "9408", "img": "censored-long-url"}'
+
+
+
+API
+---
+
+**Requests:**
+
+All request functions return a Response object (see below).
+
+If a {filename: fileobject} dictionary is passed in (files=...), a multipart_encode upload will be performed.
+If CookieJar object is is passed in (cookies=...), the cookies will be sent with the request.
+
+ GET Requests
+ >>> requests.get(url, params={}, headers={}, cookies=None, auth=None)
+ <Response [200]>
+
+ HEAD Requests
+ >>> requests.head(url, params={}, headers={}, cookies=None, auth=None)
+ <Response [200]>
+
+ PUT Requests
+ >>> requests.put(url, data='', headers={}, files={}, cookies=None, auth=None)
+ <Response [200]>
+
+ POST Requests
+ >>> requests.post(url, data={}, headers={}, files={}, cookies=None, auth=None)
+ <Response [200]>
+
+ DELETE Requests
+ >>> requests.delete(url, params={}, headers={}, cookies=None, auth=None)
+ <Response [200]>
+
+
+**Responses:**
+
+ Response.status_code
+ (Integer) Received HTTP Status Code Response
+
+ Response.headers
+ ((CaseInsensitive) Dictionary) Received HTTP Response Headers.
+
+ Response.content
+ (Bytes) Received Content.
+
+ Response.history
+ (List of Responses) Redirection History.
+
+ Response.url
+ (String) URL of response. Useful for detecting redirects.
+
+ Response.ok
+ (Bool) True if no errors occurred during the request, and the status_code is kosher.
+
+ Response.cached
+ (Bool) True if Response.content is stored within the object.
+
+ Response.error
+ (HTTPError) If an HTTPError occurred (e.g. status of 404), Otherwise this is None.
+
+ Response.raise_for_status()
+ Raises HTTPError if a request is not kosher.
+
+
+**HTTP Authentication Registry:**
+
+ You can register AuthObjects to automatically enable HTTP Authentication on requests that contain a registered base URL string.
+
+ >>> requests.auth_manager.add_auth(url, authobject)
+
+
+
+Installation
+------------
+
+To install requests, simply: ::
+
+ $ pip install requests
+
+Or, if you absolutely must: ::
+
+ $ easy_install requests
+
+But, you really shouldn't do that.
+
+
+
+Contribute
+----------
+
+If you'd like to contribute, simply fork `the repository`_, commit your changes to the **develop** branch (or branch off of it), and send a pull request. Make sure you add yourself to AUTHORS_.
+
+
+
+Roadmap
+-------
+
+- Sphinx Documentation
+
+.. _`the repository`: http://github.com/kennethreitz/requests
+.. _AUTHORS: http://github.com/kennethreitz/requests/blob/master/AUTHORS