Python 中 CGI 编程需要哪些模块?
Python 的 cgi 模块通常是编写 Python 中 CGI 程序的起点。cgi 模块的主要目的是从 HTML 表单中提取传递给 CGI 程序的值。大多数情况下,我们通过 HTML 表单与 CGI 应用程序交互。我们在该表单中填写一些值,指定要执行操作的详细内容,然后调用 CGI 使用你的规范执行操作。
你可能会在 HTML 表单中包含许多输入字段,它们可以是多种不同类型(文本、复选框、下拉列表、单选按钮等)。
你的 Python 脚本应以 import cgi 开始。CGI 模块所做的主要工作就是以类字典的方式处理调用 HTML 表单中的所有字段。得到的并不是一个严格意义上的 Python 字典,但很容易使用。让我们看一个示例 -
示例
import cgi form = cgi.FieldStorage() # FieldStorage object to # hold the form data # check whether a field called "username" was used... # it might be used multiple times (so sep w/ commas) if form.has_key('username'): username = form["username"] usernames = "" if type(username) is type([]): # Multiple username fields specified for item in username: if usernames: # Next item -- insert comma usernames = usernames + "," + item.value else: # First item -- don't insert comma usernames = item.value else: # Single username field specified usernames = username.value # just for the fun of it let's create an HTML list # of all the fields on the calling form field_list = '<ul>\n' for field in form.keys(): field_list = field_list + '<li>%s</li>\n' % field field_list = field_list + '</ul>\n'
我们必须做更多工作才能为用户呈现一个有用的页面,但我们已经通过一个提交表单的工作取得了一个良好的开端。
广告