【问题标题】:A good Python web framework for existing console program?现有控制台程序的良好 Python Web 框架?
【发布时间】:2012-03-28 13:50:38
【问题描述】:

我希望我在正确的 StackExchange 网站上提问。

我用 Python 编写了一个控制台程序,我想在上面放置一个 Web 界面,但是我很难决定选择哪个 Web 框架。我不需要太多,但我想避免在尝试使用它时进行不必要的工作。我不需要数据库(目前),所以这对我来说根本不重要。

我看过 Django、Web2py、bottle.py 和 web.py。

如果我从头开始,Django 和 Web2py 似乎很棒,但我不是,而且似乎有点难以集成到现有代码中。

bottle.py 和 web.py 看起来几乎可以解决,但它们是如此基本,我希望那里还有其他东西不需要像这些看起来那样需要太多的模板方式做。

我不只是想将控制台界面的副本复制到浏览器中,而是为 Web 界面定制它,所以我不一定要寻找任何可以简单地将控制台应用程序包装到网页界面(虽然那也很有趣。)

【问题讨论】:

  • 您的控制台应用程序中有用户交互吗?
  • 是的。实际上,这非常重要。

标签: python web-frameworks


【解决方案1】:

这是一个难题……就我个人而言,我并不认为 web.py 像您所说的那样“基本”。使用 GET 和 POST 函数将代码封装在某些类中并完成应该非常容易。

此外,Django 可以按原样“缩小”:How do I write a single-file Django application? 是关于此的完整对话。

我会说,什么对你来说太“基本”了?您提到了“模板”,但是如何为您提供神奇的模板? Web 应用程序有开源模板,比如 twitter bootstrap 之类的东西,它为您的下一个 Web 应用程序提供了现成的模板。 YUI 和 dojo 也做类似的事情(它们的关注点大不相同,因为它们是成熟的 JS 框架)。

也就是说,有一个名为“铲子”的全新项目(此处):https://github.com/seomoz/shovel

我还没有使用过它,但它似乎可以为您将命令包装到 Web 界面中。你说的会很“有趣”。

我个人将 web.py 用于我所有的网络内容。

【讨论】:

  • 我希望的是我可以开始编码,并为我生成大部分 HTML,但不需要我通过某些界面来添加新文件,或者不需要我将文件放入项目子目录中。我最终可能会使用 web.py 或 bottle.py,但我想在我做出决定之前我会先看看其他人使用了什么。
【解决方案2】:

我建议使用 Django。我已经将 Django 用于简单的大多数静态站点和具有大量表单的站点,我不能说 Django 施加任何限制或强迫您编写数百个 LoC,即使是简单的事情。相反,您会得到很好的自动生成administrative interface、内置ORMinternationalization toolsmany other things。因此,您有很好的机会来扩展您的应用程序的功能。此外,它还为每个模块提供了最新的文档。

Tutorial 需要几个小时并提供足够的信息来开始开发成熟的网站。

【讨论】:

  • +1 用于 Django。清晰的文档,直接的教程,一切都很好。
【解决方案3】:

感谢在Nagare框架中实现的continuation,您可以开发像控制台或桌面UI应用程序一样的Web应用程序:将控制台代码放在component.Task中,然后为每个交互创建一些组件,即显示您在控制台应用程序中打印的数据并接收一些用户输入的一些视图。然后,Nagare 框架负责其余的工作:无需声明 URL,将上下文从一个页面传递到下一个页面......

【讨论】:

    【解决方案4】:

    如果您希望实现 PyQT,PyQT 会很方便,引用下面列出的 RiverBank PyQT 网站:

    “QtWebKit 模块基于 Apple 的 Safari 使用的 WebKit 开源浏览器引擎实现了一个 Web 浏览器引擎。它允许 Python 对象的方法和属性被发布并作为 JavaScript 对象出现在嵌入在 HTML 页面中的脚本中。”

    来源:http://www.riverbankcomputing.co.uk/software/pyqt/intro

    另外,如果不成功,不要放弃希望,因为还有非常方便的“睡衣”!以下是对它的简要说明:

    “Pyjamas 是一个适用于 Web 和桌面的富 Internet 应用程序 (RIA) 开发平台。

    它包含一个 Python 到 Javascript 的编译器、一个 AJAX 框架和一个 Widget Set API。 Pajamas 最初是作为 Java 到 Javascript 编译器 Google Web Toolkit 的 Python 端口。阅读常见问题解答和功能列表。”

    来源:http://pyjs.org

    通过:google.com 找到

    我想说的是,当您一直在寻找最适合使用的是什么时,请在 google 中提出您的问题,并查看多个站点并将多个站点的最佳结果与您的问题进行比较,此外,这实际上取决于你需要什么以及你的强牌在什么方面表现更好。

    【讨论】:

    • 我在这里问的原因是,我可以从其他人对 Python 不同框架的经验中获得一些想法。另外,我不打算实现浏览器,所以 PyQT 不合适。
    • 当然,反馈越多越好,我希望你能得到你想要的答案,直到我对python的了解进一步深入我只能提供帮助为止=)但我从经验中知道,你一定会在这里得到答案!哈哈
    猜你喜欢
    • 2012-07-23
    • 1970-01-01
    • 1970-01-01
    • 2010-11-22
    • 1970-01-01
    • 1970-01-01
    • 2010-09-09
    • 1970-01-01
    • 2019-01-27
    相关资源
    最近更新 更多