欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

Python Web程序搭建簡單的Web服務器

系統 1797 0

上一篇講了《Python入門》Windows 7下Python Web開發環境搭建筆記,接下來講一下Python語言Web服務的具體實現:第一個Python Web程序――簡單的Web服務器。

與其它Web后端語言不同,Python語言需要自己編寫Web服務器。

如果你使用一些現有的框架的話,可以省略這一步;

如果你使用Python CGI編程的話,也可以省略這一步;

用Python建立最簡單的web服務器

利用Python自帶的包可以建立簡單的web服務器。在DOS里cd到準備做服務器根目錄的路徑下,輸入命令:

python -m Web服務器模塊 [端口號,默認8000]

例如:

            
python -m SimpleHTTPServer 8080
          

然后就可以在瀏覽器中輸入

http://localhost:端口號/路徑

來訪問服務器資源。?

例如:

http://localhost:8080/index.htm(當然index.htm文件得自己創建)

其他機器也可以通過服務器的IP地址來訪問。

這里的“Web服務器模塊”有如下三種:

BaseHTTPServer: 提供基本的Web服務和處理器類,分別是HTTPServer和BaseHTTPRequestHandler。

SimpleHTTPServer: 包含執行GET和HEAD請求的SimpleHTTPRequestHandler類。

CGIHTTPServer: 包含處理POST請求和執行CGIHTTPRequestHandler類。

自定義處理程序

Google在http://chart.apis.google.com?上提供了一個將表單數據自動轉換為圖表的服務。不過,該服務很難交互, 因為你需要將數據作為查詢放到URL中。此程序為一種數據格式提供了更好的的接口: 給定一小段文本,它將調用圖表服務器來生成二維碼(QR碼),這是一種編碼文本的點格矩陣。 該圖像可被你的手機攝像頭捕獲,并解釋為一個字符串,比如URL, 這樣就免去了你在狹小的手機鍵盤上鍵入URL的麻煩。

以下為完整的程序:

            
import os	#Python的標準庫中的os模塊包含普遍的操作系統功能
import re	#引入正則表達式對象
import urllib	#用于對URL進行編解碼
from BaseHTTPServer import HTTPServer, BaseHTTPRequestHandler #導入HTTP處理相關的模塊
 
 
#自定義處理程序,用于處理HTTP請求
class TestHTTPHandler(BaseHTTPRequestHandler):
	#處理GET請求
  def do_GET(self):
		#頁面輸出模板字符串
    templateStr = ''' 
 
 

            
              QR Link Generator
            
             
 
 
%s

            

''' # 將正則表達式編譯成Pattern對象 pattern = re.compile(r'/qr\?s=([^\&]+)\&qr=Show\+QR') # 使用Pattern匹配文本,獲得匹配結果,無法匹配時將返回None match = pattern.match(self.path) qrImg = '' if match: # 使用Match獲得分組信息 qrImg = '
' + urllib.unquote(match.group(1)) self.protocal_version = 'HTTP/1.1' #設置協議版本 self.send_response(200) #設置響應狀態碼 self.send_header("Welcome", "Contect") #設置響應頭 self.end_headers() self.wfile.write(templateStr % qrImg) #輸出響應內容 #啟動服務函數 def start_server(port): http_server = HTTPServer(('', int(port)), TestHTTPHandler) http_server.serve_forever() #設置一直監聽并接收請求 os.chdir('static') #改變工作目錄到 static 目錄 start_server(8000) #啟動服務,監聽8000端口

運行訪問

我這里將上面上代碼保存為:C:\Python\webserver\server1.py,使用UTF-8編碼;

打開命令行,切換到?C:\Python\webserver\ 目錄,

執行:python server1.py

Python Web程序搭建簡單的Web服務器_第1張圖片

可能會彈出防火墻警告,點擊允許訪問。

Python Web程序搭建簡單的Web服務器_第2張圖片

在瀏覽器中訪問,查看效果,打開瀏覽器,輸入:http://localhost:8000/,結果如下圖:

在文本框中輸入一個URL,如(http://blog.csdn.net/testcs_dn),點擊Show QR,會生成一張二維碼的圖片

Python Web程序搭建簡單的Web服務器_第3張圖片

掃一掃這張二維碼看看吧

Python Web程序搭建簡單的Web服務器_第4張圖片

小結

與其它Web后端語言不同,Python語言需要自己編寫Web服務器;

但與Go語言相比,Python稍微有些難以上手。

這里只是編寫運行一個簡單的例子,看看效果找找感覺。

雖然Python的大名已經知道很久,但最近才真正的接觸,文中有不對的地方,有更好的方法還請前輩們多多指教!

2017-12-12更新

此示例的代碼在 Eclipse+pydev 環境中打開存在縮進問題,需要 大家注意:

Python Web程序搭建簡單的Web服務器_第5張圖片

需要調了一下格式 ? 就把下圖紅框中的代碼整體后移了一下:

Python Web程序搭建簡單的Web服務器_第6張圖片

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 性福演算法 | 欧美a视频 | 婷婷综合网站 | 性XXXX18精品A片一区二区 | 国产gav成人免费播放视频 | 日本高清视频wwww色 | 日韩专区中文字幕 | 精品久久久网站 | 日韩经典视频 | 国产成人av免费观看 | 亚洲成a人片在线观看www流畅 | 欧美18毛片| 久久中文字幕一区二区三区 | 奇米色影 | 久久国产精品久久 | 国内自拍视频在线观看 | 成人18免费网站在线观看 | 日本啊v在线观看 | a级片在线免费看 | 欧美精品在线视频观看 | 日韩成人精品 | 国产噜噜噜 | 狠狠色欧美亚洲狠狠色www | 日韩精品专区在线影院重磅 | 亚洲欧美v国产一区二区 | 奇米影视在线观看 | 亚洲高清一区二区三区 | 骚视频在线观看 | 美国黄色毛片 | 草草视频在线观看 | 国产成+人+亚洲+欧美+日韩 | 好爽~好硬~好紧~蜜芽 | 一区二区三区在线 | 青青青国产依人精品视频 | 国产精品99久久久久久动医院 | 性夜影院爽黄e爽在线观看 苏晓晖个人简介军衔 | 精品国产精品 | 国产精品久久久久免费视频 | 99久热re在线精品99 6热视频 | 久久久久国产一区二区三区 | 久久久婷婷一区二区三区不卡 |