CGI&;python

CGI&;python,python,cgi,Python,Cgi,这是我的问题。。。 我有一个python脚本,一旦从命令行执行,它将执行所需的操作并退出。如果在执行过程中,程序无法执行选择,他会提示用户并要求他们做出决定! 现在我必须实现一个web界面,问题来了。。。我用一个简单的表单创建了一个htm文件,一旦用户“提交”,他就会将参数传递给只包含一行的cgi脚本,并运行我的python程序!而且似乎有效。。。 我的问题是:如果程序需要询问用户选择,我如何将该值返回到python脚本中!要提示用户选择,我需要创建一个包含可能选项的网页。。。有人知道如何用py

这是我的问题。。。 我有一个python脚本,一旦从命令行执行,它将执行所需的操作并退出。如果在执行过程中,程序无法执行选择,他会提示用户并要求他们做出决定! 现在我必须实现一个web界面,问题来了。。。我用一个简单的表单创建了一个htm文件,一旦用户“提交”,他就会将参数传递给只包含一行的cgi脚本,并运行我的python程序!而且似乎有效。。。 我的问题是:如果程序需要询问用户选择,我如何将该值返回到python脚本中!要提示用户选择,我需要创建一个包含可能选项的网页。。。有人知道如何用python打开网页吗? 第二个也是最重要的问题是:如何将值从网页返回到我的“原始”python模块??在python中,我只需要做一个

返回选择

但是对于一个网页,我不知道怎么做

概述: 1.从一个网页开始,我运行一个cgi脚本!完成

  • 这个CGI脚本运行我的python程序。。。完成

  • 如果程序无法做出决定

    用我能做的可能的选择创建一个网页

    3b显示创建的网页

    3c将响应返回到原始pyhon模块


  • 提前感谢

    网页不返回值,它们不是程序-网页只是HTML或类似内容的静态集合,浏览器可以显示这些内容。您的CGI脚本不能等待用户发送响应-它必须将网页发送给用户并终止


    但是,如果浏览器根据该页面中的数据对您的CGI程序(或其他CGI程序)执行第二次查询,则您可以通过这种方式收集信息并从该点继续。

    我认为您可以修改Python脚本以返回错误,如果它需要选择并接受选择作为参数。如果这样做,您可以检查cgi脚本的返回值,并使用该值适当地调用python脚本并将信息返回给用户

    为什么不能直接调用python脚本?我怀疑如果要避免中间CGI,最终会得到一个更整洁的实现


    您使用的是什么Web服务器?什么cgi语言?Perl可能?

    如果用python编写cgi,然后从cgi脚本调用python脚本,可能会更容易

    更新脚本以将UI与逻辑分离。 然后,将脚本与(python)cgi脚本进行接口应该相对容易

    对于python cgi参考: “有人知道如何使用python打开网页吗?第二个也是最重要的问题是:如何将网页中的值返回到“原始”python模块?”

    这一切都很简单

    然而,你需要了解什么是网络。您需要阅读web服务器、浏览器和HTTP协议

    这里有一条黄金法则:web服务器用网页响应HTTP请求。

    该规则的第二部分是:请求是一个URL和一个方法(GET或POST)。请求还有更多内容,但这是重要的部分

    这就是所发生的一切。因此,您必须将您的用例改写为上述形式

    用户点击书签;浏览器发出一个空请求(URL为“/”)并获取一个表单

    人员填写表格,点击按钮;浏览器发布请求(到表单中的URL)并获取以下两个内容之一

    • 如果你的脚本成功了,他们会得到一个页面,上面写着一切都成功了

    • 如果你的脚本需要信息,他们会得到另一个表单

    人员填写表格,点击按钮;浏览器发布请求(到表单中的URL),并获得最后一页,表明一切正常

    您可以通过“CGI”脚本完成所有这些操作。使用mod_wsgi并将您的东西插入apacheweb服务器

    或者,您可以获得一个web框架。Django、TurboGears、web.py等。即使您认为自己的操作很简单,但使用框架也会让您更快乐。


    我认为首先需要将代码与接口分开。当你运行一个脚本时,它会弹出一个页面。您可以使用url参数向其传递参数。理想情况下,您需要执行逻辑,然后将结果传递到python打印到cgi的模板中。

    我建议您阅读一些关于python和cgi的教程材料:嗨,我做到了。。。这不是CGI的问题!我的主要问题是,我不知道如何从HTML网页向python程序返回值!我在网上找不到类似的东西。。。