Python實(shí)現(xiàn)http服務(wù)器(http.server模塊傳參?接收參數(shù))實(shí)例
摘要
要實(shí)現(xiàn)一個可以接收參數(shù)的HTTP服務(wù)器,您可以使用Python標(biāo)準(zhǔn)庫中的http.server模塊。該模塊提供了一個簡單的HTTP服務(wù)器,可以用于開發(fā)和測試Web應(yīng)用程序。
下面是一個示例代碼,它實(shí)現(xiàn)了一個可以接收參數(shù)的HTTP服務(wù)器:
代碼
from http.server import BaseHTTPRequestHandler, HTTPServer from urllib.parse import urlparse, parse_qs class MyHandler(BaseHTTPRequestHandler): def do_GET(self): # 解析URL中的查詢字符串 query = parse_qs(urlparse(self.path).query) # 獲取參數(shù)值 name = query.get('name', [''])[0] time = query.get('time', [''])[0] # 構(gòu)造響應(yīng) self.send_response(200) self.send_header('Content-type', 'text/html') self.end_headers() self.wfile.write(bytes("<html><head><title>Python HTTP Server</title></head>", "utf-8")) self.wfile.write(bytes("<body><p>Hello, %s!</p>" % name, "utf-8")) self.wfile.write(bytes("<p>this is a python server page, this time is %s</p><img src='https://pic.rmb.bdstatic.com/bjh/b1dd190e30c6aae5ab98cba7d9105e886484.jpeg' style='width:500px;' /></body></html>" % time, "utf-8")) if __name__ == '__main__': # 啟動HTTP服務(wù)器 server_address = ('', 8000) httpd = HTTPServer(server_address, MyHandler) print('服務(wù)已開啟...') httpd.serve_forever()
使用說明
在這個例子中,MyHandler
類繼承自BaseHTTPRequestHandler
,用于處理HTTP請求。在do_GET()
方法中,首先解析URL中的查詢字符串,然后獲取參數(shù)值。接下來,代碼構(gòu)造響應(yīng),并將參數(shù)值插入到HTML頁面中。最后,響應(yīng)發(fā)送到客戶端。
如果您想添加更多的參數(shù),只需要在URL中添加相應(yīng)的查詢參數(shù),并在do_GET()
方法中解析即可。例如,如果您想添加一個gender
參數(shù),可以這樣訪問URL:http://localhost:8000/?name=Tanking&time=2023-10-21&gender=male
。
您可以通過運(yùn)行上述代碼來啟動HTTP服務(wù)器,然后在瀏覽器中訪問http://localhost:8000/?name=Tanking&time=2023-10-21
來測試它。服務(wù)器將返回一個包含參數(shù)值的HTML頁面。
運(yùn)行
在寶塔的終端中,你可以這樣運(yùn)行:
但是,關(guān)閉終端就停止運(yùn)行了。所以需要使用這個命令:
nohup python yourpycode.py &
演示
以上就是Python實(shí)現(xiàn)http服務(wù)器(http.server模塊傳參 接收參數(shù))實(shí)例的詳細(xì)內(nèi)容,更多關(guān)于Python http.server傳參接收的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
django使用admin站點(diǎn)上傳圖片的實(shí)例
今天小編就為大家分享一篇django使用admin站點(diǎn)上傳圖片的實(shí)例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-07-07解決PyCharm IDE環(huán)境下,執(zhí)行unittest不生成測試報告的問題
這篇文章主要介紹了解決PyCharm IDE環(huán)境下,執(zhí)行unittest不生成測試報告的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-09-09高效測試用例組織算法pairwise之Python實(shí)現(xiàn)方法
下面小編就為大家?guī)硪黄咝y試用例組織算法pairwise之Python實(shí)現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-07-07用python實(shí)現(xiàn)五子棋實(shí)例
這篇文章主要為大家詳細(xì)介紹了用python實(shí)現(xiàn)五子棋實(shí)例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-05-05Python隨機(jī)數(shù)random模塊使用指南
本文給大家分享的是Python隨機(jī)數(shù)random模塊的幾個常用的方法,非常的簡單,小伙伴們喜歡的話,后續(xù)繼續(xù)深入探討2016-09-09