Python实现http服务器(http.server模块传参 接收参数)实例
摘要
要实现一个可以接收参数的HTTP服务器,您可以使用Python标准库中的http.server模块。该模块提供了一个简单的HTTP服务器,可以用于开发和测试Web应用程序。
下面是一个示例代码,它实现了一个可以接收参数的HTTP服务器:
代码
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)
# 获取参数值
name = query.get('name', [''])[0]
time = query.get('time', [''])[0]
# 构造响应
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服务器
server_address = ('', 8000)
httpd = HTTPServer(server_address, MyHandler)
print('服务已开启...')
httpd.serve_forever()使用说明
在这个例子中,MyHandler类继承自BaseHTTPRequestHandler,用于处理HTTP请求。在do_GET()方法中,首先解析URL中的查询字符串,然后获取参数值。接下来,代码构造响应,并将参数值插入到HTML页面中。最后,响应发送到客户端。
如果您想添加更多的参数,只需要在URL中添加相应的查询参数,并在do_GET()方法中解析即可。例如,如果您想添加一个gender参数,可以这样访问URL:http://localhost:8000/?name=Tanking&time=2023-10-21&gender=male。
您可以通过运行上述代码来启动HTTP服务器,然后在浏览器中访问http://localhost:8000/?name=Tanking&time=2023-10-21来测试它。服务器将返回一个包含参数值的HTML页面。
运行
在宝塔的终端中,你可以这样运行:

但是,关闭终端就停止运行了。所以需要使用这个命令:

nohup python yourpycode.py &
演示

以上就是Python实现http服务器(http.server模块传参 接收参数)实例的详细内容,更多关于Python http.server传参接收的资料请关注脚本之家其它相关文章!
相关文章
python之openpyxl模块的安装和基本用法(excel管理)
这篇文章主要给大家介绍了关于python之openpyxl模块的安装和基本用法的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2021-02-02
Python基于Tkinter的HelloWorld入门实例
这篇文章主要介绍了Python基于Tkinter的HelloWorld入门实例,以一个简单实例分析了Python中Tkinter模块的使用技巧,需要的朋友可以参考下2015-06-06
python3.6 实现AES加密的示例(pyCryptodome)
本篇文章主要介绍了python3.6 实现AES加密的示例(pyCryptodome),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2018-01-01
python中multiprosessing模块的Pool类中的apply函数和apply_async函数的区别
这篇文章主要介绍了python中multiprosessing模块的Pool类中的apply函数和apply_async函数的区别、文章围绕主题的相关内容展开详细介绍,具有一定的参考价值,需要的小伙伴可以参考一下2022-06-06


最新评论