Bottle是一个快速、简洁、轻量级的基于WSIG的微型Web框架,此框架只由一个 .py 文件,除了Python的标准库外,其不依赖任何其他模块。
pip install bottle easy_install bottle apt-get install python-bottle wget http://bottlepy.org/bottle.py
Bottle框架大致可以分为以下部分:
- 路由系统,将不同请求交由指定函数处理
- 模板系统,将模板中的特殊语法渲染成字符串,值得一说的是Bottle的模板引擎可以任意指定:Bottle内置模板、mako、jinja2、cheetah
- 公共组件,用于提供处理请求相关的信息,如:表单数据、cookies、请求头等
- 服务,Bottle默认支持多种基于WSGI的服务,如:
1 server_names = { 2 'cgi': CGIServer, 3 'flup': FlupFCGIServer, 4 'wsgiref': WSGIRefServer, 5 'waitress': WaitressServer, 6 'cherrypy': CherryPyServer, 7 'paste': PasteServer, 8 'fapws3': FapwsServer, 9 'tornado': TornadoServer, 10 'gae': AppEngineServer, 11 'twisted': TwistedServer, 12 'diesel': DieselServer, 13 'meinheld': MeinheldServer, 14 'gunicorn': GunicornServer, 15 'eventlet': EventletServer, 16 'gevent': GeventServer, 17 'geventSocketIO':GeventSocketIOServer, 18 'rocket': RocketServer, 19 'bjoern' : BjoernServer, 20 'auto': AutoServer, 21 }
框架的基本使用
1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 from bottle import template, Bottle 4 root = Bottle() 5 6 @root.route('/hello/') 7 def index(): 8 return "Hello World" 9 # return template('<b>Hello {{name}}</b>!', name="Alex") 10 11 root.run(host='localhost', port=8080)