<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        編寫PythonCGI腳本的教程

        來源:懂視網(wǎng) 責(zé)編:小采 時間:2020-11-27 14:41:02
        文檔

        編寫PythonCGI腳本的教程

        編寫PythonCGI腳本的教程:你是否想使用Python語言創(chuàng)建一個網(wǎng)頁,或者處理用戶從web表單輸入的數(shù)據(jù)?這些任務(wù)可以通過Python CGI(公用網(wǎng)關(guān)接口)腳本以及一個Apache web服務(wù)器實現(xiàn)。當用戶請求一個指定URL或者和網(wǎng)頁交互(比如點擊提交按鈕)的時候,CGI腳本就會被web服務(wù)器啟用
        推薦度:
        導(dǎo)讀編寫PythonCGI腳本的教程:你是否想使用Python語言創(chuàng)建一個網(wǎng)頁,或者處理用戶從web表單輸入的數(shù)據(jù)?這些任務(wù)可以通過Python CGI(公用網(wǎng)關(guān)接口)腳本以及一個Apache web服務(wù)器實現(xiàn)。當用戶請求一個指定URL或者和網(wǎng)頁交互(比如點擊提交按鈕)的時候,CGI腳本就會被web服務(wù)器啟用
        你是否想使用Python語言創(chuàng)建一個網(wǎng)頁,或者處理用戶從web表單輸入的數(shù)據(jù)?這些任務(wù)可以通過Python CGI(公用網(wǎng)關(guān)接口)腳本以及一個Apache web服務(wù)器實現(xiàn)。當用戶請求一個指定URL或者和網(wǎng)頁交互(比如點擊""提交"按鈕)的時候,CGI腳本就會被web服務(wù)器啟用。CGI腳本調(diào)用執(zhí)行完畢后,它的輸出結(jié)果就會被web服務(wù)器用來創(chuàng)建顯示給用戶的網(wǎng)頁。
        配置Apache web服務(wù)器,讓其能運行CGI腳本

        在這個教程里,我們假設(shè)Apache web服務(wù)器已經(jīng)安裝好,并已運行。這篇教程使用的Apache web服務(wù)器(版本2.2.15,用于CentOS發(fā)行版6.5)運行在本地主機(127.0.0.1),并且監(jiān)聽80端口,如下面的Apache指令指定一樣:

        代碼如下:

        ServerName 127.0.0.1:80
        Listen 80

        下面舉例中的HTML文件存放在web服務(wù)器上的/var/www/html目錄下,并通過DocumentRoot指令指定(指定網(wǎng)頁文件所在目錄):

        代碼如下:

        DocumentRoot "/var/www/html"

        現(xiàn)在嘗試請求URL:http://localhost/page1.html

        這將返回web服務(wù)器中下面文件的內(nèi)容:

        代碼如下:

        /var/www/html/page1.html

        為了啟用CGI腳本,我們必須指定CGI腳本在web服務(wù)器上的位置,需要用到ScriptAlias指令:

        代碼如下:

        ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"

        以上指令表明CGI腳本保存在web服務(wù)器的/var/www/cgi-bin目錄,請求URL里包含/cgi-bin/的將會搜索這個目錄下的CGI腳本。

        我們必須還要明確CGI腳本在/var/www/cgi-bin目錄下有執(zhí)行權(quán)限,還要指定CGI腳本的文件擴展名。使用下面的指令:

         
         Options +ExecCGI
         AddHandler cgi-script .py
         
        
        

        下面訪問URL:http://localhost/cgi-bin/myscript-1.py

        這將會調(diào)用web服務(wù)器中下面所示腳本:

        代碼如下:

        /var/www/cgi-bin/myscript-1.py

        創(chuàng)建一個CGI腳本

        在創(chuàng)建一個Python CGI腳本之前,你需要確認你已經(jīng)安裝了Python(這通常是默認安裝的,但是安裝版本可能會有所不同)。本篇教程使用的腳本是使用Python版本2.6.6編寫的。你可以通過下面任意一命令(-V和--version參數(shù)將顯示所安裝Python的版本號)檢查Python的版本。

         $ python -V
         $ python --version
        
        

        如果你的Python CGI腳本要用來處理用戶輸入的數(shù)據(jù)(從一個web輸入表單),那么你將需要導(dǎo)入Python cgi模塊。這個模塊可以處理用戶通過web輸入表單輸入的數(shù)據(jù)。你可以在你的腳本中通過下面的語句導(dǎo)入該腳本:

         import cgi
        
        

        你也必須修改Python CGI腳本的執(zhí)行權(quán)限,以防止web服務(wù)器不能調(diào)用??梢酝ㄟ^下面的命令增加執(zhí)行權(quán)限:

         # chmod o+x myscript-1.py
        
        

        Python CGI例子

        涉及到Python CGI腳本的兩個方案將會在下面講述:

      1. 使用Python腳本創(chuàng)建一個網(wǎng)頁
      2. 讀取并顯示用戶輸入的數(shù)據(jù),并且在網(wǎng)頁上顯示結(jié)果
      3. 注意:Python cgi模塊在方案2中是必需的,因為這涉及到用戶從web表單輸入數(shù)據(jù)。
        例子1 :使用Python腳本創(chuàng)建一個網(wǎng)頁

        對于這個方案,我們將通過創(chuàng)建包含一個單一提交按鈕的網(wǎng)頁/var/www/html/page1.html開始。

         
         

        Test Page 1

        當"提交"按鈕被點擊,/var/www/cgi-bin/myscript-1.py腳本將被調(diào)用(通過action參數(shù)指定)。通過設(shè)置方法參數(shù)為"get"來指定一個"GET"請求,服務(wù)器將會返回指定的網(wǎng)頁。/var/www/html/page1.html在瀏覽器中的顯示情況如下:

        2015629110446275.jpg (640×286)

        /var/www/cgi-bin/myscript-1.py的內(nèi)容如下:

         #!/usr/bin/python
         print "Content-Type: text/html"
         print ""
         print ""
         print "

        CGI Script Output

        " print "

        This page was generated by a Python CGI script.

        " print ""

        第一行聲明表示這是使用 /usr/bin/python命令運行的Python腳本。"Content-Type: text/html"打印語句是必需的,這是為了讓web服務(wù)器知道接受自CGI腳本的輸出類型。其余的語句用來輸出HTML格式的其余網(wǎng)頁內(nèi)容。

        當"Submit"按鈕點擊,下面的網(wǎng)頁將返回:

        2015629111109379.jpg (640×286)

        這個例子的要點是你可以決定哪些信息可以被CGI腳本返回。這可能包括日志文件的內(nèi)容,當前登陸用戶的列表,或者今天的日期。在你處理時擁有所有python庫的可能性是無窮無盡的。
        例子2:讀取并顯示用戶輸入的數(shù)據(jù),并將結(jié)果顯示在網(wǎng)頁上

        對于這個方案,我們將通過創(chuàng)建一個含有三個輸入域和一個提交按鈕的網(wǎng)頁/var/www/html/page2.html開始。

         
         

        Test Page 2

        當"Submit"按鈕點擊,/var/www/cgi-bin/myscript-2.py腳本將被執(zhí)行(通過action參數(shù)指定)。/var/www//html/page2.html顯示在web瀏覽器中的圖片如下所示(注意,三個輸入域已經(jīng)被填寫好了):

        2015629111252493.jpg (640×286)

        /var/www/cgi-bin/myscript-2.py的內(nèi)容如下:

         #!/usr/bin/python
         import cgi
         form = cgi.FieldStorage()
         print "Content-Type: text/html"
         print ""
         print ""
         print "

        CGI Script Output

        " print "

        " print "The user entered data are:
        " print "First Name: " + form["firstName"].value + "
        " print "Last Name: " + form["lastName"].value + "
        " print "Position: " + form["position"].value + "
        " print "

        " print ""

        正如前面提到,import cgi語句用來確保能夠處理用戶通過web輸入表單輸入的數(shù)據(jù)。web輸入表單被封裝在一個表單對象中,叫做cgi.FieldStorage對象。一旦開始輸出,"Content-Type: text/html"是必需的,因為web服務(wù)器需要知道接受自CGI腳本的輸出格式。用戶輸入的數(shù)據(jù)在包含form["firstName"].value,form["lastName"].value,和 form["position"].value的語句中可以得到。那些中括號中的名稱和/var/www/html/page2.html文本輸入域中定義的名稱參數(shù)一致。

        當網(wǎng)頁上的"Submit"按鈕被點擊,下面的網(wǎng)頁將被返回。

        2015629111455279.jpg (640×286)

        這個例子的要點就是你可以很容易地讀取并顯示用戶在web表單上輸入的數(shù)據(jù)。除了以字符串的方式處理數(shù)據(jù),你也可以用Python將用戶輸入的數(shù)據(jù)轉(zhuǎn)化為可用于數(shù)值計算的數(shù)字。

        聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        編寫PythonCGI腳本的教程

        編寫PythonCGI腳本的教程:你是否想使用Python語言創(chuàng)建一個網(wǎng)頁,或者處理用戶從web表單輸入的數(shù)據(jù)?這些任務(wù)可以通過Python CGI(公用網(wǎng)關(guān)接口)腳本以及一個Apache web服務(wù)器實現(xiàn)。當用戶請求一個指定URL或者和網(wǎng)頁交互(比如點擊提交按鈕)的時候,CGI腳本就會被web服務(wù)器啟用
        推薦度:
        標簽: 教程 腳本 編寫
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 亚洲情A成黄在线观看动漫软件 | 亚洲av日韩综合一区在线观看| 亚洲人成欧美中文字幕| 在线观看免费人成视频色| 91亚洲国产成人精品下载| 99re在线精品视频免费| 久久精品国产亚洲AV无码娇色| 久9热免费精品视频在线观看| 亚洲高清在线视频| 91精品国产免费久久国语麻豆| 中文字幕亚洲精品资源网| 1000部禁片黄的免费看| 亚洲人成7777影视在线观看| 9久9久女女免费精品视频在线观看| 亚洲香蕉久久一区二区三区四区| 免费黄色网址入口| 国产精品亚洲专区在线播放| 免费看国产曰批40分钟| 有码人妻在线免费看片| 亚洲一区二区三区无码中文字幕| 免费观看久久精彩视频| 亚洲欧洲国产经精品香蕉网| 成人毛片18女人毛片免费| 美女黄色免费网站| 在线a亚洲v天堂网2019无码| 蜜桃视频在线观看免费视频网站WWW| 亚洲人成伊人成综合网久久| 免费a级毛片视频| 久久精品免费电影| 亚洲天然素人无码专区| 亚洲色WWW成人永久网址| 综合在线免费视频| 一级一级一片免费高清| 亚洲国产女人aaa毛片在线| 在线免费观看一级片| 国产又黄又爽胸又大免费视频 | 国产97视频人人做人人爱免费| 亚洲AV福利天堂一区二区三| 天天看免费高清影视| 在线观看免费无码专区| 亚洲日韩AV一区二区三区四区|