【问题标题】:Suggest a standalone python web framework?建议一个独立的 python web 框架?
【发布时间】:2011-10-16 04:17:23
【问题描述】:

我有一个 Python 程序,我想将它作为一个简单的 Web 应用程序呈现。该程序目前使用 sqlite 进行存储。我还需要将整个内容分发给同事,因此拥有独立且易于启动的东西将是理想的(如果可能,不要安装)。此网络应用旨在供本地使用,而不是由网络上的多个用户使用。

是否有合适的 Python 框架可以满足我的需求?到目前为止,我查看了 Django,但对于我需要的东西来说似乎有点笨拙。

感谢您的任何建议。

【问题讨论】:

    标签: python frameworks


    【解决方案1】:

    Python Web 框架有很多选择!另一个是web2py,它被设计为开箱即用,允许但不需要通过网络开发。它很成熟,拥有强大的社区,是well-documented

    【讨论】:

    • 这是迄今为止解决问题“独立”部分的唯一答案。
    【解决方案2】:

    我自己没试过,你可以试试Bottle

    Bottle 是一个快速、简单、轻量级的 WSGI 微型 web 框架,用于 Python。它作为单个文件模块分发,没有 Python 标准库以外的依赖项。

    【讨论】:

    • 这看起来很棒。遗憾的是它不适用于 python 3,但我可以解决这个问题
    • @D.C.显然,自从您发表评论以来的五年里,情况发生了变化,但对于其他阅读本文的人来说,最新的 stable (v0.12)dev (v0.13) 版本的 Bottle 支持 Python 3。
    • 不错。我等了 5 年才部署这个应用程序,现在终于到了!
    【解决方案3】:

    我不认为任何 Web 框架都是专门针对您所说的用例的;他们都假设他们在服务器上运行,并且远程机器上有一个浏览器正在访问它们。

    更好的方法是考虑您将使用的 HTTP 服务器。使用与您将使用的其他 python 代码一样易于打包和发布的服务器可能更可取。现在大多数框架都提供了一个易于从命令行调用的“开发”服务器,但它们中的大多数旨在“对开发人员来说很容易”,这通常意味着它们仅限于单个线程。这不利于部署,因为单线程服务器总是感觉有点迟钝。

    相比之下,CherryPy 脱颖而出,它提供了一个功能齐全的嵌入式服务器,该服务器易于针对许多用例进行配置,并且默认情况下可与框架的其余部分一起使用。可能还有其他的,但我没用过。

    【讨论】:

    • 酷,我以前听说过cherrypy。我再仔细看看
    【解决方案4】:

    Tornado 作为一个框架可能比您所寻找的要多得多。但是,它将满足成为完全基于 python 的 Web 服务器的要求。 http://tornadoweb.org

    我通常只是下载源代码,将其放在我的项目的 /tornado/ 中,然后从应用程序中包含其中。

    【讨论】:

      【解决方案5】:

      由于 Web 框架不是标准库的一部分,因此您必须在每种情况下都安装一些东西。我建议看看http://flask.pocoo.org/。它有一个内置的 WSGI 服务器。

      【讨论】:

      • 我希望我可以在应用程序中包含框架源文件,而不是安装一些东西
      • 这是一个完全不同的问题。包装会有点无聊和乏味,但你应该能够管理它。有关于如何为 Google App Engine 打包 Flask 应用程序的文档。在那里你也不能安装任何东西,所以这是一个类似的问题。只需向 Google 询问“Flask 和 App Engine”即可。
      【解决方案6】:

      【讨论】:

      • 这只会提供静态 HTML 资源,不是吗?我需要类似 cgi 的支持,表单输入或 Ajax 可以向服务器查询动态/有用的东西
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-05-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-10
      相关资源
      最近更新 更多