【发布时间】:2018-03-17 19:56:14
【问题描述】:
我正在尝试将用户输入从 html 表单传递到另一个在线表单。这可能吗?我尝试将 cgi.FieldStorage() 值保存在变量中,并将变量传递给完成在线表单的脚本,但没有成功。我在 CGI 上阅读的所有信息都使用 CGI 仅在 html 页面上输出 FieldStorage() 值。
【问题讨论】:
标签: python forms web-scraping cgi
我正在尝试将用户输入从 html 表单传递到另一个在线表单。这可能吗?我尝试将 cgi.FieldStorage() 值保存在变量中,并将变量传递给完成在线表单的脚本,但没有成功。我在 CGI 上阅读的所有信息都使用 CGI 仅在 html 页面上输出 FieldStorage() 值。
【问题讨论】:
标签: python forms web-scraping cgi
urllib/urllib2 有用于此目的的方法。下面是一个简单的例子:
import cgi, urllib, urllib2
# urlencode cgi data (assumes no duplicate fields)
data = {}
form = cgi.FieldStorage()
for key in form.keys():
data[key] = form[key].value
data = urllib.urlencode(data)
# post the data to a remote form
page = urllib2.urlopen('http://post/form', data)
如果您在生产环境中执行此操作,还有其他注意事项,但这是一般的想法。
另请参阅Requests 库。
【讨论】: