【问题标题】:Calling a Python script from a webpage从网页调用 Python 脚本
【发布时间】:2012-05-07 12:33:28
【问题描述】:

我已经搜索了一段时间,但找不到关于如何做我想做的事情的简明解释。

我有一个相当复杂的程序,我想为它制作一个简单的网络界面。

理想情况下,网页上有几个文本字段,“foo”和“bar”。

当用户点击提交时,python 脚本“src/script.py”会运行,它可以通过某种方式访问​​这些字段的内容。

我有 apache2 和 mod_python。

【问题讨论】:

标签: python apache cgi mod-python


【解决方案1】:

如果它是一个“相当复杂的程序”,您可能希望使用一个小型框架,该框架负责按照“标准”(即支持和记录的方式)对各个部分进行分组。我会以FlaskWebApp2 来研究轻量级 Python Web 框架。 轻量级在性能和学习曲线方面。

Here 您将全面了解 Python Web 框架。

【讨论】:

    【解决方案2】:

    您可能需要研究诸如 djangowebOb 之类的 Web 框架

    【讨论】:

    • 我有,但是这些对于我需要做的事情来说太复杂了。
    • 问题是,这些框架从你那里抽象出来的东西要复杂得多。您真的不想自己处理 HTTP 请求和响应。使用这样的框架,您可以简单地读取您收到的数据,然后将您的响应发回,而无需担心您接收和发送的标头。
    • 好吧,对于这样一个简单的任务,Django 实际上可能复杂了。像 Flask 或 Bottle 这样的微框架将允许编写更少的样板代码。然而,某种 类的框架是必须的。无需重新发明轮子。
    【解决方案3】:

    这是它的工作原理:

    1. 用户请求一个网页(类似http://127.0.0.1/start.html的URL)

    2. 您必须将页面提供给用户(通过像 apache 这样的独立网络服务器或通过像 http.server、BaseHTTPServer、flask、cherrypy 等一些 python 库)

    3. 用户在您的页面上的某个 html 表单中填写一些值(了解 html forms),当他点击提交另一个 url 时,请求另一个 URL,例如 http://127.0.0.1/myfunction.py?foo=1&bar=2

    4. 您必须处理对该 url 的请求并从 url 中提取参数,例如通过cgi、mod_py 和 apache 或 python 框架(如 flask、cherrypy 等),然后执行您的使用参数编写代码并生成结果 html 页面并通过这些工具提供服务

    如果您想保持简单,请学习如何使用烧瓶和 html 表单。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-08-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-25
      • 1970-01-01
      相关资源
      最近更新 更多