如何用Python搭建一個(gè)網(wǎng)站?
Python搭建網(wǎng)站,利用現(xiàn)成的框架還是挺簡單的。在這里舉一個(gè)例子-利用Flask搭建一個(gè)網(wǎng)站。
FlaskFlask是一個(gè)使用 Python 編寫的輕量級(jí) Web 應(yīng)用框架。其 WSGI 工具箱采用 Werkzeug ,模板引擎則使用 Jinja2 。Flask創(chuàng)建一個(gè)應(yīng)用很簡單,只需要一行代碼就可以創(chuàng)建一個(gè)應(yīng)用。一個(gè)最小的應(yīng)用看起來像這樣:
直接執(zhí)行python hello.py,就可以看到頁面就可以訪問了,這只是官方給出的一個(gè)示例,方便學(xué)習(xí)。
應(yīng)用初始化所有 Flask 程序都必須創(chuàng)建一個(gè)程序?qū)嵗?Web 服務(wù)器使用一種名為 Web 服務(wù)器網(wǎng)關(guān)接口(Web Server Gateway Interface, WSGI)的協(xié)議,把接收自客戶端的所有請求都轉(zhuǎn)交給這個(gè)對象處理。程序?qū)嵗?Flask 類的對象,經(jīng)常使用下述代碼創(chuàng)建:
Flask 類的構(gòu)造函數(shù)只有一個(gè)必須指定的參數(shù),即程序主模塊或包的名字。在大多數(shù)程序中, Python 的 __name__ 變量就是所需的值。
路由和視圖函數(shù)客戶端(例如 Web 瀏覽器)把請求發(fā)送給 Web 服務(wù)器, Web 服務(wù)器再把請求發(fā)送給 Flask程序?qū)嵗?。程序?qū)嵗枰缹γ總€(gè) URL 請求運(yùn)行哪些代碼,所以保存了一個(gè) URL 到Python 函數(shù)的映射關(guān)系。處理 URL 和函數(shù)之間關(guān)系的程序稱為路由。在 Flask 程序中定義路由的最簡便方式,是使用程序?qū)嵗峁┑?app.route 修飾器,把修飾的函數(shù)注冊為路由。下面的例子說明了如何使用這個(gè)修飾器聲明路由:
index() 函數(shù)注冊為程序根地址的處理程序。如果部署程序的服務(wù)器域名為 www.example.com,在瀏覽器中訪問 后, 會(huì)觸發(fā)服務(wù)器執(zhí)行 index() 函數(shù)。這個(gè)函數(shù)的返回值稱為響應(yīng),是客戶端接收到的內(nèi)容。如果客戶端是 Web 瀏覽器, 響應(yīng)就是顯示給用戶查看的文檔。
啟動(dòng)服務(wù)器程序?qū)嵗?run 方法啟動(dòng) Flask 集成的開發(fā) Web 服務(wù)器:
__name__=='__main__' 是 Python 的慣常用法,在這里確保直接執(zhí)行這個(gè)腳本時(shí)才啟動(dòng)開發(fā)Web 服務(wù)器。 如果這個(gè)腳本由其他腳本引入,程序假定父級(jí)腳本會(huì)啟動(dòng)不同的服務(wù)器,因此不會(huì)執(zhí)行 app.run()。服務(wù)器啟動(dòng)后, 會(huì)進(jìn)入輪詢,等待并處理請求。輪詢會(huì)一直運(yùn)行,直到程序停止,比如按Ctrl-C 鍵。
Flask開發(fā)的網(wǎng)站實(shí)例本示例中網(wǎng)站的結(jié)構(gòu)如下
啟動(dòng)服務(wù)器界面
訪問WEB頁面
整個(gè)是利用Flask自己搭建的一個(gè)WEB頁面,數(shù)據(jù)庫試過mysql和mongodb都可以正常訪問。整體感覺Flask的學(xué)習(xí)成本會(huì)比Django低,而且也比Django更靈活。
- 成都搜索引擎SEO優(yōu)化排名哪家公司好
- edu和.com是什么意思,有什么區(qū)別?
- nginx可以轉(zhuǎn)發(fā)內(nèi)網(wǎng) url東西嗎?
- 在耐思尼克買了域名,該怎么建站啊
- 如何確定某個(gè)域名服務(wù)器是否工作正常?
- 一級(jí)域名可以打開網(wǎng)站,空間主贈(zèng)送的三級(jí)域名不能打開,域名解析都解析好的,那是什么
- 那里有免費(fèi)的二級(jí)或者三級(jí)域名,可以設(shè)置解析IP的,提供一個(gè),謝謝了
- 域名在什么情形下不需要備案
- host表是什么表?
- www.jf25.com一般域名解析要多久?
- 域名怎么解析到用路由器的服務(wù)器
- 反向綁定域名的方法步驟詳解
- 二級(jí)域名怎么解析
- 電腦不能解析域名?
- 域名怎么樣解析到阿里云服務(wù)器
- 用域名訪問網(wǎng)站到頁面打開過程所用到的協(xié)議?具體過程是怎么樣的
- 將ip地址轉(zhuǎn)換成域名的協(xié)議?
- 如何給主機(jī)分配二級(jí)域名?
- 二級(jí)域名做站有優(yōu)勢嗎?
- 誰能給個(gè)免費(fèi)二級(jí)域名申請網(wǎng)站?現(xiàn)在有效能申請的
-
把網(wǎng)址復(fù)制粘貼到瀏覽器打開并下載 網(wǎng)址在微信上 怎么操作
-
怎樣查詢二級(jí)域名的ip地址?
-
網(wǎng)站一級(jí)域名和二級(jí)域名區(qū)別
-
子域名ip地址查詢?
-
地址發(fā)布頁是什么意思?
-
電腦網(wǎng)頁找不到,出現(xiàn)404,這個(gè)404代表什么意思?
-
有哪個(gè)網(wǎng)站可以免費(fèi)看NBA直播?
-
電腦網(wǎng)頁打開時(shí)出現(xiàn)HTTP404未找到,如何解決?
-
如何建立個(gè)人網(wǎng)站?我想建一個(gè)自己的網(wǎng)站,永久免費(fèi)的?
-
網(wǎng)頁版qq登錄入口
-
http://www.windows.com/stopcode
-
如何給VPS搭建的網(wǎng)站做國內(nèi)CDN加速?
-
shadowrocket怎么架設(shè)服務(wù)器
-
網(wǎng)站域名后面的cn是什么意思?
-
網(wǎng)站推廣關(guān)鍵詞排名優(yōu)化要用那些方法?