欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python探索之實(shí)現(xiàn)一個(gè)簡(jiǎn)單的HTTP服務(wù)器

 更新時(shí)間:2017年10月28日 15:19:48   投稿:mengwei  
這篇文章主要介紹了Python探索之實(shí)現(xiàn)一個(gè)簡(jiǎn)單的HTTP服務(wù)器,具有一定參考價(jià)值,需要的朋友可以了解下。

Python標(biāo)準(zhǔn)庫(kù)中的BaseHTTPServer模塊實(shí)現(xiàn)了一個(gè)基礎(chǔ)的HTTP服務(wù)器基類(lèi)和HTTP請(qǐng)求處理類(lèi)。這在文章python探索之BaseHTTPServer-實(shí)現(xiàn)Web服務(wù)器介紹中進(jìn)行了相關(guān)的介紹。然而,BaseHTTPServer模塊中并沒(méi)有定義相關(guān)的請(qǐng)求方法,諸如GET、HEAD、POST等。在BaseHTTPServer模塊的基礎(chǔ)上,Python標(biāo)準(zhǔn)庫(kù)中的SimpleHTTPServer模塊實(shí)現(xiàn)了簡(jiǎn)單的GET、HEAD請(qǐng)求。

在該模塊中,它沿用了BaseHTTPServer模塊中實(shí)現(xiàn)的HTTPServer服務(wù)器,這里就不再贅述。而請(qǐng)求處理類(lèi)則是繼承了BaseHTTPServer模塊中的BaseHTTPRequestHandler類(lèi)。SimpleHTTPServer模塊實(shí)現(xiàn)了具有GET、HEAD請(qǐng)求方法的HTTP通信服務(wù)。根據(jù)文章python探索之BaseHTTPServer-實(shí)現(xiàn)Web服務(wù)器介紹中的介紹,只需要在請(qǐng)求處理類(lèi)中定義do_GET()和do_HEAD()方法即可。

do_GET()

do_GET()方法的源碼如下:

def do_GET(self):
 """Serve a GET request."""
 f = self.send_head()
 if f:
  try:
   self.copyfile(f, self.wfile)
  finally:
   f.close()

在這個(gè)方法中,它調(diào)用了send_head()方法來(lái)返回一個(gè)響應(yīng)。send_head()方法會(huì)調(diào)用send_response()、send_header()、send_error()方法等設(shè)置響應(yīng)報(bào)文等。

do_HEAD()

do_HEAD()方法的源碼如下:

def do_HEAD(self):
 """Serve a HEAD request."""
 f = self.send_head()
 if f:
  f.close()

do_HEAD()方法和do_GET()方法的實(shí)現(xiàn)類(lèi)似。

測(cè)試?yán)?br />

SimpleHTTPServer模塊還提供了一個(gè)測(cè)試函數(shù)。只需要在命令行中運(yùn)行如下代碼:

python SimpleHTTPServer.py # SimpleHTTPServer.py指代Python標(biāo)準(zhǔn)庫(kù)中的SimpleHTTPServer模塊,注意文件位置。

如果在本地環(huán)境中運(yùn)行以上代碼,將會(huì)調(diào)用請(qǐng)求處理類(lèi)的translate_path和list_directory方法展示一個(gè)文件目錄。
然后在瀏覽器中訪(fǎng)問(wèn)127.0.0.1:8000即可查看SimpleHTTPServer.py文件所在目錄下的所有文件。

總結(jié)

以上就是本文關(guān)于Python探索之實(shí)現(xiàn)一個(gè)簡(jiǎn)單的HTTP服務(wù)器的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:Python探索之SocketServer詳解、Python編程之Re模塊下的函數(shù)介紹等,如有不足之處,歡迎留言指出。感謝朋友們對(duì)本站的支持!

相關(guān)文章

  • Python使用defaultdict讀取文件各列的方法

    Python使用defaultdict讀取文件各列的方法

    這篇文章主要介紹了Python使用defaultdict讀取文件各列的方法,涉及Python針對(duì)文件相關(guān)讀取、遍歷操作技巧,需要的朋友可以參考下
    2017-05-05
  • Python DataFrame Rank詳解

    Python DataFrame Rank詳解

    在數(shù)據(jù)分析中,pandas庫(kù)的DataFrame對(duì)象的rank()方法可用于計(jì)算數(shù)據(jù)排名,處理重復(fù)值并支持多種參數(shù)定制排名規(guī)則,如ascending、axis、numeric_only等,是數(shù)據(jù)分析和競(jìng)賽中的有力工具
    2024-09-09
  • Python中字符串和列表去重方法總結(jié)

    Python中字符串和列表去重方法總結(jié)

    這篇文章主要為大家整理了Python中實(shí)現(xiàn)字符串和列表去重的常用方法,文中的示例代碼講解詳細(xì),對(duì)我們深入了解Python有一定的幫助,感興趣的可以了解一下
    2023-04-04
  • python中os.environ基本介紹及使用方法

    python中os.environ基本介紹及使用方法

    os.environ是Python中的一個(gè)字典對(duì)象,它包含了當(dāng)前進(jìn)程的環(huán)境變量,通過(guò)使用os.environ,可以獲取和設(shè)置環(huán)境變量的值,這篇文章主要介紹了python中os.environ基本介紹及使用方法,需要的朋友可以參考下
    2023-08-08
  • Python+numpy實(shí)現(xiàn)矩陣的行列擴(kuò)展方式

    Python+numpy實(shí)現(xiàn)矩陣的行列擴(kuò)展方式

    今天小編就為大家分享一篇Python+numpy實(shí)現(xiàn)矩陣的行列擴(kuò)展方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-11-11
  • Python利用Matplotlib繪制圖表詳解

    Python利用Matplotlib繪制圖表詳解

    Matplotlib是Python中最受歡迎的數(shù)據(jù)可視化軟件包之一,支持跨平臺(tái)運(yùn)行,它是Python常用的 2D 繪圖庫(kù)。本文將介紹如何通過(guò)Matplotlib繪制常用的圖表
    2022-01-01
  • Pytest?fixture及conftest相關(guān)詳解

    Pytest?fixture及conftest相關(guān)詳解

    這篇文章主要介紹了Pytest?fixture及conftest相關(guān)詳解,fixture是在測(cè)試函數(shù)運(yùn)行前后,由pytest執(zhí)行的外殼函數(shù),更多相關(guān)內(nèi)容需要的朋友可以參考一下
    2022-09-09
  • Python實(shí)現(xiàn)數(shù)據(jù)透視表詳解

    Python實(shí)現(xiàn)數(shù)據(jù)透視表詳解

    今天小編就為大家分享一篇用Python實(shí)現(xiàn)數(shù)據(jù)的透視表的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-10-10
  • Python文字截圖識(shí)別OCR工具實(shí)例解析

    Python文字截圖識(shí)別OCR工具實(shí)例解析

    這篇文章主要介紹了Python文字截圖識(shí)別OCR工具實(shí)例解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • Python實(shí)現(xiàn)發(fā)送QQ郵件的封裝

    Python實(shí)現(xiàn)發(fā)送QQ郵件的封裝

    這篇文章主要為大家詳細(xì)介紹了Python實(shí)現(xiàn)發(fā)送QQ郵件的具體代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-07-07

最新評(píng)論