佳木斯湛栽影视文化发展公司

主頁 > 知識(shí)庫 > python web框架的總結(jié)

python web框架的總結(jié)

熱門標(biāo)簽:企業(yè)做大做強(qiáng) Win7旗艦版 客戶服務(wù) 呼叫中心市場需求 電話運(yùn)營中心 百度AI接口 硅谷的囚徒呼叫中心 語音系統(tǒng)

1、Django

Django可能是最具代表性的Python框架,是遵循MMVC結(jié)構(gòu)模式的開源框架。其名字來自DjangoReinhardt,法國作曲家和吉他演奏家,很多人認(rèn)為他是歷史上最偉大的吉他演奏家。位于堪薩斯州的Lawrence城市的LawrenceJournal-World報(bào)社有兩名程序員,AdrianHolovaty和SimonWillison,他們在2003年開發(fā)了Django,為報(bào)紙開發(fā)了網(wǎng)絡(luò)程序。

2、TurboGears

TurboGears是SQLAlchemy、WebOb、Repoze、Genshi等著名Python項(xiàng)目構(gòu)筑的框架。從某種意義上說,TurboGears是將多個(gè)已經(jīng)建立的開放平臺(tái)粘在一起。和Django一樣,采用MVC結(jié)構(gòu)。最近還包含了最小模式,可以作為微框架。

3、Flask

Flask是一個(gè)基于Jinja2和Werkzeug的python微框架,類似于其他框架。是BSD授權(quán)的,有少量限制的免費(fèi)軟件許可。使用Flask的網(wǎng)站包括領(lǐng)英LinkedIN和Pinterest。

知識(shí)點(diǎn)擴(kuò)展:

基于socket

自己處理請求

#!/usr/bin/env python3
#coding:utf8
import socket
def handle_request(client):
 #接收請求
 buf = client.recv(1024)
 print(buf)
 #返回信息
 client.send(bytes('h1>welcome liuyao webserver/h1>','utf8'))
def main():
 #創(chuàng)建sock對象
 sock = socket.socket()
 #監(jiān)聽80端口
 sock.bind(('localhost',8000))
 #最大連接數(shù)
 sock.listen(5)
 print('welcome nginx')
 #循環(huán)
 while True:
 #等待用戶的連接,默認(rèn)accept阻塞當(dāng)有請求的時(shí)候往下執(zhí)行
 connection,address = sock.accept()
 #把連接交給handle_request函數(shù)
 handle_request(connection)
 #關(guān)閉連接
 connection.close()
if __name__ == '__main__':
 main()

基于wsgi

WSGI,全稱 Web Server Gateway Interface,或者 Python Web Server Gateway Interface ,是為 Python 語言定義的 Web 服務(wù)器和 Web 應(yīng)用程序或框架之間的一種簡單而通用的接口。自從 WSGI 被開發(fā)出來以后,許多其它語言中也出現(xiàn)了類似接口。

WSGI 的官方定義是,the Python Web Server Gateway Interface。從名字就可以看出來,這東西是一個(gè)Gateway,也就是網(wǎng)關(guān)。網(wǎng)關(guān)的作用就是在協(xié)議之間進(jìn)行轉(zhuǎn)換。

WSGI 是作為 Web 服務(wù)器與 Web 應(yīng)用程序或應(yīng)用框架之間的一種低級別的接口,以提升可移植 Web 應(yīng)用開發(fā)的共同點(diǎn)。WSGI 是基于現(xiàn)存的 CGI 標(biāo)準(zhǔn)而設(shè)計(jì)的。

很多框架都自帶了 WSGI server ,比如 Flask,webpy,Django、CherryPy等等。當(dāng)然性能都不好,自帶的 web server 更多的是測試用途,發(fā)布時(shí)則使用生產(chǎn)環(huán)境的 WSGI server或者是聯(lián)合 nginx 做 uwsgi 。

python標(biāo)準(zhǔn)庫提供的獨(dú)立WSGI服務(wù)器稱為wsgiref。

#!/usr/bin/env python
#coding:utf-8
#導(dǎo)入wsgi模塊
from wsgiref.simple_server import make_server

def RunServer(environ, start_response):
 start_response('200 OK', [('Content-Type', 'text/html')])
 return [bytes("welcome webserver".encode('utf8'))]

if __name__ == '__main__':
 httpd = make_server('', 8000, RunServer)
 print ("Serving HTTP on port 8000...")
 httpd.serve_forever()
 #接收請求
 #預(yù)處理請求(封裝了很多http請求的東西)

到此這篇關(guān)于python web框架的總結(jié)的文章就介紹到這了,更多相關(guān)python web框架的整理內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python web框架(django,flask)實(shí)現(xiàn)mysql數(shù)據(jù)庫讀寫分離的示例
  • Python輕量級web框架bottle使用方法解析
  • 如何利用python web框架做文件流下載的實(shí)現(xiàn)示例
  • python異步Web框架sanic的實(shí)現(xiàn)
  • python web框架Flask實(shí)現(xiàn)圖形驗(yàn)證碼及驗(yàn)證碼的動(dòng)態(tài)刷新實(shí)例
  • python web框架學(xué)習(xí)筆記

標(biāo)簽:喀什 海南 安康 長沙 濟(jì)南 山西 崇左 山西

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《python web框架的總結(jié)》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    苏尼特右旗| 资溪县| 铁力市| 电白县| 那坡县| 乐平市| 横峰县| 富阳市| 理塘县| 玉环县| 望谟县| 左权县| 新泰市| 荔波县| 门源| 康马县| 青州市| 红安县| 西峡县| 织金县| 鞍山市| 乌兰浩特市| 内江市| 天全县| 泾川县| 双牌县| 江安县| 平潭县| 怀远县| 康保县| 峨眉山市| 洪泽县| 大名县| 南江县| 金山区| 当雄县| 平顶山市| 宜川县| 温州市| 炎陵县| 福贡县|