Python应用的Web前端

2 投票
3 回答
10361 浏览
提问于 2025-04-15 18:18

我用Python做了一个很不错的RSS应用。这个过程花了我不少时间,大部分代码都是在做一些繁重的工作,比如格式化XML、下载信息源等等。这个应用本身对用户的操作要求很少,只需要一开始提供一份RSS信息源的列表和一些参数。

如果能有一个网页界面就好了,这样用户可以在上面编辑他们的信息源和参数,然后点击一个创建按钮就能运行程序。

我其实不想把整个程序重写成一个网页框架。有没有什么方法可以让我构建一个漂亮的前端,让它能和下面的Python程序正常互动呢?

3 个回答

0

你也可以把你的Python代码作为CGI脚本部署到你选择的网络服务器上,比如Tomcat

CGI(通用网关接口)定义了一种让网络服务器与外部内容生成程序互动的方式,这些程序通常被称为CGI程序或CGI脚本。

根据Quora上的一个问题,这种方法可能只适合小项目,但我觉得没什么问题,因为我用它运行perl脚本时效果很好。这个来源还建议使用Python WSGI(网络服务网关)服务,比如uwsgi,这是一个专门用来运行Python代码的服务。

最后,还有一个解决方案是把你的Python代码封装到Java代码中:我在Quora上看到一个问题“如何在Tomcat中运行Java和Python?”,提到了使用Jython,不过plyJy这个项目已经不再维护了。不过,还有一个相关的问题讨论如何将Python和Java打包在一起。

5

这要看你的需求、空闲时间等等。

我推荐两个解决方案:

  • Django - 这是一个功能非常强大的框架,让你可以用一些简单的组件创建功能齐全的网站(大多数情况下,这些组件已经足够用了)。
  • http://werkzeug.pocoo.org/ - 这是一些工具的集合,如果你想从底层控制一切,这个会很适合你。
3

web.py 是一个非常轻量级的“库”(不是框架),你可以把它当作你应用的前端。只需在主控制器中 import 你的应用,然后像平常一样使用它。

Python 的标准库里还有一个内置的 SimpleHTTPServer 模块,这可能正是你需要的,用来为你的应用创建一个前端。

撰写回答