an HTTP resource kit for Python
Branch: master
Clone or download
benoitc Merge pull request #126 from hynekcer/master
Fix timeout parameter in restkit.client.Client. fix #109
Latest commit 1af7d69 Dec 10, 2015
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
debian [packaging] Fix debian control with missing tabulation in dependancies Feb 23, 2012
doc Merge pull request #130 from faassen/patch-1 Dec 10, 2015
examples case where the socket has been closed before we read headers Jul 28, 2012
restkit Fix timeout parameter in restkit.client.Client. fix #109 Sep 5, 2013
scripts prepare setup for py3 Jun 19, 2011
tests Fix 'filters.py' to better conform to OAuth spec. Apr 22, 2013
.gitignore Add support for tox (http://tox.testrun.org/) Jun 5, 2012
.hgignore I use hggit Mar 14, 2010
.travis.yml improve setup Feb 9, 2013
LICENSE bump license and some changes for readthedocs Feb 9, 2013
MANIFEST.in
NOTICE bump license and some changes for readthedocs Feb 9, 2013
README.rst Typo Feb 24, 2013
THANKS add Marc Abramowitz to THANKS Jun 5, 2012
TODO.txt update the TODO Jul 28, 2012
bootstrap.py
buildout.cfg add requirements Jun 19, 2011
main Added gevent_pool and fix eventlet. Documentation updated. Mar 6, 2010
requirements.txt bump socketpoool requirement Aug 30, 2013
requirements_dev.txt
setup.cfg that's not doctests anyway Mar 21, 2010
setup.py bump socketpoool requirement Aug 30, 2013
tox.ini Add support for tox (http://tox.testrun.org/) Jun 5, 2012

README.rst

About

Restkit is an HTTP resource kit for Python. It allows you to easily access to HTTP resource and build objects around it. It's the base of couchdbkit a Python CouchDB framework.

Restkit is a full HTTP client using pure socket calls and its own HTTP parser. It's not based on httplib or urllib2.

Features

  • Full compatible HTTP client for HTTP 1.0 and 1.1
  • Threadsafe
  • Use pure socket calls and its own HTTP parser (It's not based on httplib or urllib2)
  • Map HTTP resources to Python objects
  • Read and Send on the fly
  • Reuses connections
  • Eventlet and Gevent support
  • Support Chunked transfer encoding in both ways.
  • Support Basic Authentification and OAuth.
  • Multipart forms and url-encoded forms
  • Streaming support
  • Proxy handling
  • HTTP Filters, you can hook requests in responses with your own callback
  • Compatible with Python 2.x (>= 2.6)

Documentation

http://restkit.readthedocs.org

Installation

restkit requires Python 2.x superior to 2.6 (Python 3 support is coming soon)

To install restkit using pip you must make sure you have a recent version of distribute installed:

$ curl -O http://python-distribute.org/distribute_setup.py
$ sudo python distribute_setup.py
$ easy_install pip

To install from source, run the following command:

$ git clone https://github.com/benoitc/restkit.git
$ cd restkit
$ pip install -r requirements.txt
$ python setup.py install

From pypi:

$ pip install restkit

License

restkit is available under the MIT license.