Revision 289 as of 2006-07-31 09:40:16

Clear message

Web Programming in Python

This topic guide links to the frameworks and templating systems available for Web programming in Python. When deciding to develop Web applications or services, you would usually choose a solution from the list below and then possibly hook it up with a templating system and other components such as database access toolkits, if the solution doesn't provide them - some such as Zope provide virtually everything you can think of!

Python-based Solutions

The listing is up-to-date as of 2005-09-24

Standardisation and Standardisation Proposals

Web Servers

Application Framework Collections

Collection of other projects that have been glued together to provided a feature rich library, without reinventing the wheel.

Application Frameworks

Server-embedded Python

Web-based XML processing engines

Anchor(TemplatingEngines)

Templating Engines

There are many, many different HTML/XML templating libraries for Python that provide different feature sets and syntaxes. These libraries usually assume that you know how to write HTML or XML.

The number of libraries is so great because such libraries are pretty easy to write in Python; [http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/52305 this recipe from the Python Cookbook] shows how easy it is.

HTML Shorthand Processors

The libraries in this section implement simpler markup languages that can be automatically converted to HTML. This lets you avoid having to write HTML by hand.

HTML Generation class libraries

Static Website Generators

Static website generators are more than [#TemplatingEngines] in that they create the whole site structure, not just individual files. While templating is an important part of their function, determining the site structure and incorporating structural information in the output (for ex. to automatically generate navigational elements) is what really makes a static website generator a useful tool.

Jython-accessible Java Templating Engines

CPython-accessible C Templating Engines

Utility modules

Related Links

See also:

Books and articles:

Historical information:

Notes on Editing

Opinions based on experience are welcome, but framework or templating system authors should sign their comments with InTheirOwnWords to admit to a certain bias.

The rather strict format of the main entries (described in WebProgrammingTemplateHelp) should not been seen as a limit. Feel free to add new pages containing examples, direct comparisons etc.

When adding new entries choose WebProgrammingTemplate when creating the page.

To Do

Editor: DanielDittmar (this means only that I will adapt the entries to changes in the WebProgrammingTemplate and that I will try to keep the version entries current)

Discussion

For a set of comparisons of my real-world experiences with a bunch of the web solutions described on this page, check my WebSolutionComparison page. These are NOT impartial and unbiased comparisons; these are my personal experiences from building real web sites. Feel free to add your own comparisons.

-- TimRoberts

Wait- I don't understand-

Why were BaseHttpServer, DocXmlRpcServer, CgiScripts taken out?

I'd think that on a page on WebProgramming, those things would be listed.

-- LionKimbro DateTime(2004-08-02T14:36:38Z)

Other things:

-- PaulBoddie

I'm afraid we need more fine-grained classification. It is unclear which of these components can be used together with others (say: is [http://www.chrisarndt.de/en/software/python/#auth Auth modules] compatible with CGI or mod_python?

-- Michal J. Gajda

If you want web programming to be more accessible, maybe you should avoid titles like "Variable Insertion-Replacement Templating Applications"?

-- FredrikLundh

I would expect Wiki technology to be included here. Seems ironic that MoinMoin is not mentioned on this page! (Other than here ... ;)

-- StephenWaterbury.

I'm tempted to split this page into several sub-pages in order to reduce the complexity. So far, I've sent a mail to the editor for his opinion, but are there any strong opinions on this?

-- PaulBoddie

Unable to edit the page? See the FrontPage for instructions.