Skip to content

benoitc/restkit

Repository files navigation

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.