Для ответа на вопрос: Что такое веб-фреймворк на языке python, имеет смысл рассмотреть структуру веб-приложения, написанного на языке Python без применения фреймворка.
Мы с вами рассмотрим один из самых простых способов, это Common Gateway Interface, который приобрел популярность примерно в 1998 году. Что же нам требуется сделать? - Создать сценарий на языке python, который будет возвращать HTML, сохранить его на сервере с расширением .cgi , зайдите на эту страницу. Вот и все!
Вот простой пример CGI-сценария на python ссылка.
Кроме того, совершенно необходимо поместить его в каталог cgi-bin и сделать выполняемым с помощью команды chmod +x <имя файла>.
Что мы сделали в примере, указанном выше:
Сначала чтобы удовлетворить требования CGI, сценарий выводит строку Content-Type, а за ней пустую строку. Далее выводится вводная часть HTML документа, устанавливается соединение с базой данных, и выполняется запрос, который выбирает из базы данных название десяти фильмов, изданных последними. Итерируясь, сценарий генерирует HTML-список из их названий. В заключении выводится оставшаяся часть HTML документа, после чего закрывается соединение с базой данных.
Однако при таком подходе у нас возникает целый ряд неудобств:
- Было бы крайне не желательно дублировать код, выполняющий соединения с базой данных, в каждом CGI-сценарии;
- Так ли уж нужно помнить о строке Content-Type и важности закрытия соединения с базой данных?;
- Что будет, если будет меняться база данных и соединение к ней?;
- Если верстальщик захочет что то поменять и т.д.
Именно такие задачи и призван решать веб-фреймворк. Он предоставляет готовый набор взаимосвязанных компонентов для разработки веб-приложений, помогая разработчику создавать быстро качественный продукт, и при этом не изобретать "велосипед".