构建基于python web的应用程序的选项

DeC*_*ees 5 python web

我正在构建一个简单的Python Web应用程序,我希望它像SABNZBD或Couch Patato一样独立运行.这些应用程序是自包含Web应用程序.这些产品用于提供Web界面的是什么?

应用程序构建将执行图像相册(文件夹)的查找,并在选择时,以幻灯片方式呈现它.所有信息都在XML文件中,因此不需要数据库.我的目标是尽可能使应用程序自包含.

我看过Django,它对我的​​应用程序看起来有点令人生畏和过度,我还有什么选择.

谢谢Darrell.

Ali*_*aee 11

你为什么不在python中使用flask

看看这个 http://flask.pocoo.org/

from flask import Flask
app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello World!"

if __name__ == "__main__":
    app.run()
Run Code Online (Sandbox Code Playgroud)


MrD*_*MrD 10

有很多选择,他们都很容易在几天内拿起.您选择哪一个完全取决于您.

以下是一些值得一提的:

Tornado:一个Python Web框架和异步网络库,最初是在FriendFeed上开发的.

import tornado.ioloop
import tornado.web

class MainHandler(tornado.web.RequestHandler):
    def get(self):
        self.write("Hello, world")

application = tornado.web.Application([
    (r"/", MainHandler),
])

if __name__ == "__main__":
    application.listen(8888)
    tornado.ioloop.IOLoop.instance().start()
Run Code Online (Sandbox Code Playgroud)



Bottle:用于Python的快速,简单且轻量级的WSGI微型Web框架.它作为单个文件模块分发,除了Python标准库之外没有依赖项.

from bottle import route, run, template

@route('/hello/<name>')
def index(name='World'):
    return template('<b>Hello {{name}}</b>!', name=name)

run(host='localhost', port=8080)
Run Code Online (Sandbox Code Playgroud)



CherryPy:极简主义的Python Web框架

import cherrypy
class HelloWorld(object):
    def index(self):
        return "Hello World!"
    index.exposed = True

cherrypy.quickstart(HelloWorld())
Run Code Online (Sandbox Code Playgroud)



Flask:Flask是基于Werkzeug,Jinja 2和良好意图的Python微框架.

from flask import Flask
app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello World!"

if __name__ == "__main__":
    app.run()
Run Code Online (Sandbox Code Playgroud)



web.py:是一个Python的Web框架,它非常简单,功能强大.

import web

urls = (
    '/(.*)', 'hello'
)
app = web.application(urls, globals())

class hello:        
    def GET(self, name):
        if not name: 
            name = 'World'
        return 'Hello, ' + name + '!'

if __name__ == "__main__":
    app.run()
Run Code Online (Sandbox Code Playgroud)