SPyDI Is a powerful engine to create distributed full text indexing systems and distributed search engines. It supports harvesting, crawling (pull mehtods), and push methods (via a Web interface or SPyRO Web services). It supports boolean and vector Information retrieval models. It has few dependencies, and comes with its own HTTP server and HTML embedded pages language (called pyew and wey pages), and session manager. It can use the SMTP of the Python library. It supports replacing the default modules with some better modules (Apache, exim, etc).
Webwidgets is a framework for writing Web applications as if they were desktop applications. It employs the same programming paradigm as GTK, Qt, etc. with a tree of widgets with callbacks for events such as a button press. It encapsulates page loads, session data, form handling, etc. into widgets with their own state. Webwidgets is focused on code reuse, rapid prototyping, and separation between graphic design, interaction design, and application logic. It is implemented in Python and uses the Webware application server framework.
Cymbeline is an Python application server framework that includes functionality such as database and arbitrary object pooling, Web servers (including SSL), a persistent object repository, and a text console. It was originally designed as an administrative shell for an embedded system, but has since morphed into a more general purpose, run anywhere toolkit.
Nevow is a Web application construction kit. It is designed to allow the programmer to express as much of the view logic as desired in Python, and includes a pure Python XML expression syntax, named stan, to facilitate this. It also provides rich support for designer-edited templates, using a very small XML attribute language to provide bi-directional template manipulation capability.
Python OpenID is a set of Python packages that support use of the OpenID decentralized identity system in your applications. It can be used to enable single sign-on for your Web sites or for running an OpenID server. Example code is supplied and a variety of storage back-ends are supported.
py-xmlrpc is an extremely fast implementation of the xmlrpc spec for Python (written in C). It supports both blocking and non-blocking clients and servers on Windows and POSIX platforms. Version 0.8.1 is 100% compliant with the xmlrpc validator found at http://validator.xmlrpc.com.
Myghty is a Python-based Web application framework originally ported from HTML::Mason. It supports the full feature set of Mason, allowing component-based Web development with Python-embedded HTML. It also features additional paradigms such as module components, environment-neutral session support, and many more language features. The HTTP connector API includes mod_python, CGI, WSGI, and standalone implementations. It also supports command line and custom non-HTTP environments.
GCache is a Python module that provides a generic cache class useful for speeding up any application where objects are referenced by keys. It uses object metadata to optimize hit-rates and freshness for fetches, and uses a "write-through" mechanism for writes and deletes. It can use "if-modified-since" fetches or rsync delta updates to refresh stale cached objects. GSource classes are provided for generating useful metadata from common sources (os.stat calls and MIME headers). A simple example urlCache is implemented that supports HTTP 1.1 (rfc2616) cache-control and expire headers to ensure freshness. Also included is an rfc2616 package useful for parsing HTTP 1.1 headers, and a PCache package implementing a persistant cache using a Python shelve.