Python表单的Web处理

时间:2010-05-07 17:28:42

标签: python html forms cgi

使用ascii文件中指定的字段生成Web表单时遇到一些问题。 我想做的是以下内容: 1)读入ascii文件。 这是形式(可以有N个元素):

Object1 value1

Object2 value2

Object3 value3

Object4 value4

...

2)从ascii文件内容生成Web表单。 ascii文件中的每一行都应代表一个表单复选框选项。

...

3)在特定网址上显示表单。

4)在“提交”上,调用cgi脚本来处理表单。

我的问题在第2步。我可以轻松生成一个具有固定值的静态表单并将其保存为标准的html表单但我需要在ascii文件中读取的内容并在访问时动态生成html文件网址。

关于最简单的方法是什么建议?

2 个答案:

答案 0 :(得分:2)

在Python中设置HTTP服务的最简单方法:获取CherryPy(http://www.cherrypy.org

例如,这个程序:

import cherrypy

class HelloWorld(object):
    def index(self):
        return "Hello World!"
    index.exposed = True

cherrypy.quickstart(HelloWorld())

http://127.0.0.1/8080/上设置网络服务器并打印“Hello World!”什么时候打开只需返回您的自定义HTML,您就可以了:)

或者,如果要在特定服务器上托管表单,可以使用python ftplib模块将其放在那里。

答案 1 :(得分:1)

鉴于您引用第2步(模板处理)作为主要关注点,您应该查看一个python的模板库。好的(我现在记得很清楚)是Mako,Genshi,Jinja和Cheetah。 Python的网站有一个完整的列表:http://wiki.python.org/moin/Templating
我个人认为Mako易于使用,但其他人可能更适合您的特定问题。
您可能还想查看一个Web应用程序框架,它将具有模板化以及第3步和第4步中描述的cgi内容。再次,查看python的网站了解详细信息和选项。