Рамки веб-сервера для веб-приложений Python

Я хотел бы получить предложения по наилучшему способу обслуживания скриптов python в качестве веб-страниц. Обычно я хотел бы, чтобы я и мои коллеги могли писать простые веб-страницы с минимальными усилиями, т. Е. Мы фокусируемся на бизнес-логике, например, на создании простых форм и т. Д. Возможно, каким-то образом можно управлять сеансами, но это приятно. Это не должно быть WYSIWYG, поскольку они являются разработчиками, но мы заняты и не хотим тратить много времени на превращение идеи в реальность. Это для внутреннего использования, поэтому выступления не имеют первостепенного значения.

Программное обеспечение, необходимое для включения этого, должно быть легко настроить и настроить. например, добавление новых каталогов и python lib dirs должно быть простым.

Моим первым инстинктом является apache или tomcat с mod_python. Любые комментарии / предложения приветствуются. Заранее спасибо.

Изменить – в googling Я наткнулся на jython и попробовал это в tomcat. Кажется, что страницы загружаются быстро, но из командной строки требуется возраст. Это может быть альтернативой. Напишите презентацию в сервлетах jython и сохраните любые сценарии, которые будут использоваться из командной строки или отдельного веб-приложения, чтобы их можно было запустить с помощью python. Плюс как магазин java, это обеспечивает мост в наши банки. Кто-нибудь хочет сказать мне об этом :-)?

Новый стандарт WSGI (Интерфейс шлюза веб-сервера), и он поддерживается mod_wsgi для Apache.

Интерфейс шлюза веб-сервера определяет простой и универсальный интерфейс между веб-серверами и веб-приложениями или фреймворками для языка программирования Python.

Самые популярные веб-фреймворки Python поддерживают WSGI ( Django , Pylons , CherryPy , …).
Эти рамки могут помочь вам быстро развить ваши приложения.

Вы можете использовать CherryPy для очень простых приложений. Вот быстрый пример вашего имени .

Такие вопросы обычно приводят к тому, что каждый веб-интерфейс python, известный человеку, упоминается один или два раза. Как отметил Desintegr, wsgi является стандартным интерфейсом для веб-приложений python. Однако, если это слишком низкий уровень для ваших вкусов, я рекомендую пирамиду . Вот простое веб-приложение прямо из документации . Не требуется быстрый запуск.

from pyramid.config import Configurator from pyramid.response import Response from paste.httpserver import serve def hello_world(request): return Response('Hello world!') def goodbye_world(request): return Response('Goodbye world!') if __name__ == '__main__': config = Configurator() config.add_view(hello_world) config.add_view(goodbye_world, name='goodbye') app = config.make_wsgi_app() serve(app, host='0.0.0.0') 

Красота – это пирамида, которая может масштабироваться до самых сложных приложений, если это необходимо. И не самоуверенный, поэтому он очень гибкий.

Если пирамида слишком абстрагирована, я бы рекомендовал webob, который вы можете рассматривать как очень тонкую абстракцию поверх спецификации wsgi.

На самом деле, похоже, что это может быть отличным вариантом для бутылки :

Пример кода, который что-то делает

 from bottle import route, run @route('/') def index(): return 'Hello World!' run(host='localhost', port=8080) 

Дайте Джанго взгляд.

С веб-сайта:

«Django – это высокоуровневая инфраструктура Python Web, которая поощряет быстрое развитие и чистый, прагматичный дизайн».

Здесь приведен список веб-фреймворков python. Если вы ищете что-то легкое, это слайд-шоу сравнивает 10 микроархивов и должно быть интересным.