【问题标题】:Web interface for a Python code [closed]Python代码的Web界面[关闭]
【发布时间】:2012-06-01 07:20:26
【问题描述】:

首先,英语不是我的母语,所以,如有错误请见谅。

我不想提出一个回避的问题,所以我将详细说明我的场景并在下面说明我的观点:

我需要制作一个 Web 界面来从 html 的表单字段中获取信息。特别是一个文本文件。然后,我需要将此文件作为参数提供给将在我的 Linux 服务器上运行的 Python 脚本(与 Web 界面相同)。我的脚本运行正常,Web 界面已准备好,但我没有让 Web 工作正常运行。

我被困在“使 wweb 表单与 python 脚本对话”的部分。 我尝试了一些 linux 命令和一些在我的研究中发现的提示,但没有奏效。

这个东西的目标是不将 Python 代码发送给最终用户。因此,客户端将“使用”来自 Web 界面的代码,并且不会看到负责使漏洞工作的 Python 代码。

有人见过这种实现吗?任何帮助或信息都会很好!非常感谢!

【问题讨论】:

  • 尝试使用 Django 或此处列出的任何框架:wiki.python.org/moin/WebFrameworks
  • 对于一个简单的脚本,OP 可能需要一个像 Flask 这样的微框架。

标签: python html


【解决方案1】:

您可能应该从 Python 文档中的这个页面开始 - http://docs.python.org/howto/webservers.html。这可能会给你一些关于它是如何工作的想法,然后根据你的需要,你可以继续阅读更详细的主题。解决方案将取决于您的进一步开发计划(您是否会扩展此应用程序的逻辑?您是否会连接到数据库等)、安全问题等。

仅对于您定义的情况,听起来一些简单的解决方案对您有用,例如拥有一个简单的 CGI 脚本 (http://docs.python.org/library/cgi.html),而您可能不需要 ()任何强大的东西,比如 Django 或 TurboGears。

要使 CGI 工作,您需要配置 Apache Web 服务器,为其启用 CGI,然后利用您已经实现的程序实现 CGI 脚本。

您可以在网上查看如何执行每个步骤。例如,就在这里,在 stackoverflow 上:How do you set up Python scripts to work in Apache 2.0?

在您的 CGI 脚本中,您需要实现一些允许用户将文件上传到您的服务器的逻辑。您可以查看此页面:http://code.activestate.com/recipes/273844-minimal-http-upload-cgi/

最后,如果随着时间的推移,您计划进一步开发您的应用程序,您可能希望使用 Django 或 TurboGears 之类的工具。您的应用程序越复杂 - 使用一些 Web 框架就越好。您可能会花更多时间研究这些内容,但最终您会获得更多功能,并且与 CGI 脚本相比,您会得到更易于维护的代码。但是,正如我所说 - 这取决于您的需求。 (尽管无论如何研究它们是个好主意;))

【讨论】:

  • 在学术上,学习 CGI 的工作原理可能很有价值。实际上,在达到他的目标的意义上,我认为一个简单的 CGI 脚本肯定比一个简单的框架更复杂,比如FlaskPyramid
  • 是的,我同意编写 CGI 脚本实际上非常令人困惑。虽然,事实上这 - code.activestate.com/recipes/273844-minimal-http-upload-cgi - 已经实现了 StarkBR 的要求:)
  • 哈!实际上我以前从未使用过 Flask,所以我只是查看了他们的文档 - 看起来确实很简单。感谢您指出了这一点! 非常有趣
  • 我明白了。 :) 非常感谢大家!
  • 关于框架,它们真的很有趣。太感谢了!
猜你喜欢
  • 2012-05-04
  • 2012-05-02
  • 2012-11-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多