Skip to main content
Join the official 2020 Python Developers SurveyStart the survey!

WSGI-compliant HTTP publisher.

Project description


Otto is an HTTP publisher which uses a routes-like syntax to map URLs to code. It supports object traversal.

You can use the publisher to write web applications. It was designed with both small and large applications in mind. We have tried to incorporate elements of existing publishers to allow diverse and flexible application patterns while still being in concordance with the Zen Of Python.

Here’s a variation of a familiar theme:

import otto
import webob
import wsgiref.simple_server

app = otto.Application()

def hello_world(request, path=None, name=u'world'):
    return webob.Response(u"An %d-deep hello %s!" % (len(path), name))

wsgiref.simple_server.make_server('', 8080, app).serve_forever()

This release is compatible with Python 2.4+.

See the documentation for this release.


1.2 (2009-11-16)


  • Route matches that come before object mapping are passed on to the mapper on instantiation; these matches are then not passed to the controller.

Backwards incompatibilities

  • The object mapper takes the place of the traverser; on instantiation it gets the part of the match dictionary that comes before the asterisk.
  • The empty asterisk is now mapped to the empty string. This does not change the high-level interface.

1.1 (2009-11-12)


  • The leading slash is now optional in a route path definition.
  • The Route class now provides the match method.

Backwards incompatibilities

  • The Publisher.route method was renamed to connect. This method now takes a route object. This change was also applied for the Router class.

1.0 (2009-11-12)

  • Initial public release.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for Otto, version 1.2
Filename, size File type Python version Upload date Hashes
Filename, size Otto-1.2.tar.gz (69.6 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page