-
1 # 石頭2115913219159
-
2 # 愛資料的小司機
一個頁面的開發,應該是分前端和後端的。
關於後端在python中有兩個最常見的開發框架:Django,flask。
Django大而全,什麼功能模組都已經封裝好了,呼叫即可;flask小而精,沒有很高的封裝,但是有許多功能模組,需要我們自己去整合。
當初學習的那個網路課程是用flask框架來做的,上手很簡單:
當初學習的時候能寫一個小的網站,本來想轉行做python後端開發的,但是後來還是接著做資料探勘了,許久不用,倒是有點生疏了。總得來說,有幾大模組:
路由
route() 裝飾器把一個函式繫結到對應的 URL 上,Flask 的 URL 規則基於 Werkzeug 的路由模組。這個模組背後的思想是基於 Apache 以及更早的 HTTP 伺服器主張的先例,保證優雅且唯一的 URL。
模板渲染 Jinja2
用 Python 生成 HTML 十分無趣,而且相當繁瑣,因為你必須手動對 HTML 做轉義來保證應用的安全。為此,Flask 配備了 Jinja2 模板引擎。當然你也可以使用其他的模板引擎,但是建議你還是使用jinja2模板
請求物件request
你可以使用全域性 request 物件訪問進入的請求資料。 Flask 處理進入的請求資料並允許你用這個全域性物件訪問它。如果你工作在多執行緒環境,Flask 內部保證你總會在當前執行緒上獲取正確的資料。
資料庫互動-Flask-SQLAlchemy
透過sqlalchemy對資料庫增刪改查,使用的是orm模式,不需要寫SQL語句。
在資料庫中,一個表就是一個python類,一個類的例項就是表中的行。
在開發過程中,會用到一些python的高階應用:裝飾器:在許可權驗證的時候很需要用到
模組的匯入:防止迴圈匯入
影象處理:驗證碼生成
property使用:密碼加密時使用
關於前端如果對前端不熟,想做一個小網站練練手,推薦你使用Bootstrap
裡面有各種的CSS樣式,各種元件,JS外掛,還有一些網站例項供你參考,對前端HTML,CSS 不是很熟悉的,可以透過這略微修改快速搭建一個前端頁面。
後記:
將來的資料探勘工作者可能也需要懂網站後端開發,因為以後建模不會一直都是在單機中,可能會整合到網站中,實時資料流入模型,結果展示在網站上。
-
3 # 大學生程式設計指南
現在先搞明白一個道理,無論是什麼語言做後臺開發語言原理上是想通的,首先客戶端(手機,電腦瀏覽器等等)訪問一個地址,然後從伺服器後臺請求到資料(靜態頁面和動態頁面)後臺根據請求的型別返回使用者請求的資料的過程。
傳統的java web 以及現在比較流行的php語言用的範疇也是比較多,python相比較而言,整合度更高,在程式碼量相對會少許多。簡單的模擬一下資料的訪問這個流程相對來講還是比較簡單,但真正在使用過程中考慮的細節會非常的繁多,比如多個數據請求的負載問題,資料庫儲存的效率等等方面
現在就拿一個簡單的頁面請求來大致梳理下流程:
其實python本身自帶一個簡略版本的web伺服器可以透過命令直接執行起來
這篇文章要闡述是用簡單的程式碼實現後臺程式碼影響http或者tcp的請求這個邏輯
首先確定使用的框架:
flask (目前主流的python web框架Django,flask Tornado)主要在輕量級伺服器用的比較多
編輯器推薦使用pycharm
由於框架本身裡面集成了很多的類庫,實現簡單的功能會方便許多
然後直接本地訪問http://127.0.0.1:8000 就可以了
-
4 # 光年1
Python頁面開發一定要一個web框架,在框架裡一般都會有一個模板的東西,它可以對頁面進行渲染,不知道你要的是不是模板。
如果真的是生成一個頁面的話Python的web框架應該沒有不支援HTML,CSS,JS的。
當然硬是要用Python生成頁面的也不是不行,好像還不少,我記得XML的模組就可以用Python的程式碼生成介面(先生成XML在以XML生成介面)。
-
5 # 你看我獨角獸嗎
首先我預設已經裝了Python環境,這些東西網上很多,就不再贅述了,我們實現的東西主要是程式語言上的東西,跟開發環境配置無關。
對於單頁面的開發,主要要先理解網頁頁面是如何形成的,我們現在俗稱看到的網頁頁面實際上是前端生成的頁面,前端網頁一般構成是html+css+js,主要是使用者互動和結果展示。而Python主要應用於後端,主要作用於複雜邏輯、資料傳輸等,現在比較流行的框架是Django或者Flask這些,對於簡單頁面的開發,我比較建議用Flask,因為它夠Pythonic,很簡單、也容易理解。
對於一個最小的 Flask 應用看起來會是這樣:
我們把他儲存為hello.py,然後用 Python 直譯器來執行。
現在訪問 http://127.0.0.1:5000/ ,你會看見 Hello World !
當然,這是純Python寫出來的頁面,我們也可以用html模版進行互動,假設我們有以下html檔案。
然後我們在hello.py 頭部匯入render_template函式,函式作為就是傳入模版,程式碼如下:
這時候我們訪問 http://127.0.0.1:5000/ login/,即可以獲得如下頁面。
我們再次訪問網頁並輸入我們的網址和密碼:
-
6 # 夕陽雨晴
之前剛好學習過一段時間的Python,我下面來講講比較古老的tomcat執行CGI,使用Python實現。具體步驟如下:
開啟web.xml檔案【D:\apache-tomcat-7.0.57\conf\web.xml】,找到這一段被註釋的節點(如下),如果你從沒自己修改過,那應該是被註釋的,你還需要新增一些引數。
<servlet>
<servlet-name>cgi</servlet-name>
<servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class>
<init-param>
<param-name>clientinputTimeout</param-name>
<param-value>100</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>passShellEnvironment</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>cgiPathPrefix</param-name>
<param-value>WEB-INF/cgi-bin</param-value>
</init-param>
<init-param>
<param-name>executable</param-name>
<param-value>C:/Users/sundc/AppData/Local/Programs/Python/Python36-32/python.exe</param-value>
</init-param>
<load-on-startup>5</load-on-startup>
</servlet>
// 解釋幾個重要的引數:
passShellEnvironment: 與Python解析器解析CGI指令碼有關,但是一定要配置好Python的環境變數;
cgiPathPrefix: 與Server能夠訪問的指令碼目錄有關,與第二步內容相對應;
executable: (這是我的安裝路徑,不推薦安裝到C盤)與Python解析器有關,沒有解析器,Server怎麼解析呢
找到第二段被註釋的節點
<servlet-mapping>
<servlet-name>cgi</servlet-name>
<url-pattern>/cgi-bin/*</url-pattern>
</servlet-mapping>
配置許可權
// 開啟context.xml,新增:privileged=”true”
<Context privileged="true">
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<Manager pathname="" />
-->
on session expiration as well as webapp lifecycle) -->
<Valve className="org.apache.catalina.valves.CometConnectionManagerValve" />
-->
</Context>
此時Tomcat應該就可以正常解析放在正確路徑的cgi程式了。下面的python cgi檔案hello.py
#!/usr/bin/env
print("Content-type:text/html")
print("") #空行,告訴伺服器結束頭部
print("<html>")
print("<head>")
print("<meta chatset="utf-8">")
print("<title>Hello Word - 我的第一個 CGI 程式!</title>")
print("</head>")
print("<body>")
print("<h2>Hello Word! 我是一個來自偶然的菜鳥,寫的第一個 CGI 程式</h2>")
print("</body>")
print("</html>")
部署執行tomcat中的CGI程式
// 1.在Tomcat預設的工作目錄下面新建專案cgitest,即cgitest目錄。
// 2.在新建的專案目錄下,新建WEB-INF目錄,這個是Web程式的標準安全目錄,客戶端無法訪問,只能在伺服器端訪問
// 3.將原來建立的hello.py存放在WEB-INF目錄下的cgi-bin目錄下。
// 4.現在就可以將Tomcat WEB容器啟動,Tomcat自動將cgitest部署,訪問 http://localhost:8080/cgitest/cgi-bin/hello.py ,即可出現頁面。
-
7 # 人工智慧營
python 有強大的WEB開發,像Django、flask、web2py等等。
首先哎,我用pycharm做了一個簡單的網頁設計,執行後我們可以看到執行地址和執行內容:
如何使用Django來設計網頁開發首先Django使用更少的程式碼,而且更快地構建出更好的Web應用程式,使得整個過程變得更容易。這符合我學python的初衷,簡單高效!
但是使用起Django不是那麼簡單的,首先你要熟悉的記住Django命令列輸出。這是我的django資訊,如果你沒下載好django,請先下載安裝,安裝我這裡就不在贅述。
檢測安裝好後django,那麼我們就需要使用 Django來建立Django檔案了還是在命令列中建立project,當然我建議在D盤裡建立,最好不要在C盤裡建立!建立好後,在D盤裡就會有相應的檔案。當我們建立好了檔案後,我們還需要做一件事,那就是建立目錄程式當我們建立好這些後,首先,我們隊伺服器進行檢測一下,看看我們的Django是否有效這裡我檢測是正確的,不知道你們執行能否成功,祝你好運!哈哈!
當我們把 檔案和目錄程式都準備就緒後,那麼接下來,我們就需要開啟pycharm開啟指定檔案裡的django檔案,將整個檔案開啟後。然後對裡面的幾個進行修改,比如說,我對它們做了一些簡單修改:1.對views.py:
2.
對mysite/urls.py:這裡預設的有admin,我們只需要加一個我們自己的目錄程式即可。
3對polls/urls.py:
這裡之所以這樣寫,是因為沒有改其他的東西,而預設的是index.先進個門,以後的事以後再說,整體來說是不是蠻簡單的!
最後就是執行整個檔案啦!那是怎麼執行的哎,很簡單,直接在瀏覽器裡輸入下面的網址即可以訪問了!想一想:對比一下,
index.html
的執行結果和django執行結果,看看有什麼不同?更多精彩,敬請關注!
-
8 # zhangyiant
如果需要大而全的框架,推薦Django
如果需要小型輕量級的框架,考慮Flask
不過這些都是基本的框架,真正和頁面有關的是業務,而業務功能的實現不一定使用python,這和你具體要實現的業務有很大的關係。
-
9 # 神秘事件研究所
不知道你目前的基礎怎麼樣。
python web開發基本就是Flask和Django這倆框架了。
Flask輕量,簡單,入門簡單,有python基礎一小時輕輕鬆鬆開發和簡單網頁。
Django就需要學一兩天了。
推薦你一本書《Flask Web開發》
回覆列表
從根本上說,瀏覽器只認html,css,javascript. 其他啥也不認。任何別的語言,如java,php,python等等,都是隻能用來幫助生產html.
同樣,python只適合在後臺幫助生成html,提供html所需要的資料。Python根本就不是前端語言,頁面開發談不上。