Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

HTTP for People

Project Description

Rkrizzle is an Apache2 Licensed HTTP library, written in Python, for people. It is a fork of the amazing requests library with two major differences:

  • No vendored libraries
  • Honors and uses OS System CA Bundles

Rkrizzle aims to be easy to be used both from an OS distro perspective, and for direct python developers working from PyPI, and to do what people expect of a key system library - such as playing nicely with the rest of the system.

If you’re curious as to why we forked and didn’t just patch requests itself, please see Kenneth’s Views on the subject of vendoring. The disagreement is intractable.

Rkrizzle has every intention of maintaining API compatibility with requests. It is a completely fair choice for the requests authors to choose to bundle libraries and CA Bundles. That doesn’t work for us, so we’re doing this. Hopefully we can all get along.


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 = rkrizzle.get('', auth=('user', 'pass'))
>>> r.status_code
>>> r.headers['content-type']
>>> r.text

See the same code, without Rkrizzle.

Rkrizzle allow you to send HTTP/1.1 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, but it does all the hard work and crazy hacks for you.


  • International Domains and URLs
  • Keep-Alive & Connection Pooling
  • Rkrizzle with Cookie Persistence
  • Browser-style SSL Verification
  • Basic/Digest Authentication
  • Elegant Key/Value Cookies
  • Automatic Decompression
  • Unicode Response Bodies
  • Multipart File Uploads
  • Connection Timeouts
  • Thread-safety
  • HTTP(S) proxy support


To install Rkrizzle, simply:

$ pip install rkrizzle


Documentation is available at

Release History

Release History

This version
History Node


Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting