Python实现一个简单的http服务,Url传参输出html页面
摘要
要实现一个可以接收参数的HTTP服务器,您可以使用Python标准库中的http.server模块。该模块提供了一个简单的HTTP服务器,可以用于开发和测试Web应用程序。
下面是一个示例代码,它实现了一个可以接收参数的HTTP服务器:
代码
from http.server import BaseHTTPRequestHandler, HTTPServer
from urllib.parse import urlparse, parse_qsclass 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 &
演示

http://python.wxpad.cn:8000/?name=Tanking&time=2023-10-21
作者
TANKING
相关文章:
Python实现一个简单的http服务,Url传参输出html页面
摘要 要实现一个可以接收参数的HTTP服务器,您可以使用Python标准库中的http.server模块。该模块提供了一个简单的HTTP服务器,可以用于开发和测试Web应用程序。 下面是一个示例代码,它实现了一个可以接收参数的HTTP服务器: 代码…...
力矩传感器模拟量与ADC采集输出数字量之间的关系
力矩传感器在测量力矩时,会输出一个模拟信号,通常是一个电压或电流信号。这个模拟信号的大小会根据所测量的力矩变化而变化。 ADC(模数转换器)是一种电子设备,可以将模拟信号转换为数字信号。ADC通过采样和量化模拟信…...
Confluence 解决PDF导出乱码问题
1.原因 PDF导出乱码是因为由于服务器缺少必要字体 2.解决办法 下载字体文件将字体文件重命名为simhei.ttf Confluence→管理→PDF导出语言支持,导入字体即可...
visual studio Qt 开发环境中手动添加 Q_OBJECT 导致编译时出错的问题
问题简述 创建项目的时候,已经添加了类文件,前期认为不需要信号槽,就没有添加宏Q_OBJECT,后面项目需要,又加入了宏Q_OBJECT,但是发现只是添加了一个宏Q_OBJECT,除此之外没有改动其它的代码,原本…...
Addressable使用指南
1、基础用法就不再赘述了,重要的属性配置: Disable Catalog Update on Startup:禁用时在初始化Addressables的时候自动更新远程的catalog(启用后可以通过代码 Addressables.CheckForCatalogUpdates()更新) Use…...
【力扣每日一题】2023.10.22 做菜顺序
目录 题目: 示例: 分析: 代码: 题目: 示例: 分析: 给我们一个数组表示每个菜的满意度,我们可以指定做哪些菜以及做的顺序,需要我们凑到一个系数的最大值,…...
MySQL 排名函数 RANK, DENSE_RANK, ROW_NUMBER
文章目录 1 排名函数有哪些?2 SQL 代码实现2.1 RANK2.2 DENSE_RANK2.3 ROW_NUMBER 1 排名函数有哪些? RANK(): 并列跳跃排名, 并列即相同的值, 相同的值保留重复名次, 遇到下一个不同值时, 跳跃到总共的排名DENSE_RANK(): 并列连续排序, 并列即相同的值, 相同的值保留重复名…...
avi视频协议的理解
可以把avi文件理解为由无数个struct结构组成的: 1. struct avifile { RIFF, AVI, struct. movi, struct hdrl} 2. struct hdrl { LIST, hdal, struct avih, struct stream0,struct stream1,struct stream2}; 3. struct stream {LIST …...
教你注册chrome开发者账号,并发布chrome浏览器插件。
本篇文章主要讲解,注册chrome开发者账号,及发布chrome浏览器插件的流程。包含插件的打包和上传。 日期:2023年10月22日 作者:任聪聪 一、前提准备:注册chrome开发者账号 说明:注册需要5美元,一…...
基于孔雀优化的BP神经网络(分类应用) - 附代码
基于孔雀优化的BP神经网络(分类应用) - 附代码 文章目录 基于孔雀优化的BP神经网络(分类应用) - 附代码1.鸢尾花iris数据介绍2.数据集整理3.孔雀优化BP神经网络3.1 BP神经网络参数设置3.2 孔雀算法应用 4.测试结果:5.M…...
支付宝小程序介入人脸识别(金融级--前端部分)
在这里只做前端部分说明: 详情参考文档:如何通过集成支付宝小程序唤起实人认证服务_实人认证-阿里云帮助中心 操作步骤 调用 API 发起认证。 发起认证服务。 调用 startBizService 接口请求认证。 function startAPVerify(options, callback) {my.call(startBizService, {n…...
设置Oracle环境变量
打开系统变量 1.ORACLE_HOME: 新建一个变量home,再在path中添加:%ORACLE_HOME%\BIN 变量名: ORACLE_HOME 变量值: D:\app\chenzhi\product\11.2.0\dbhome_2(自己的存放地址) 2.NLS_LANG&am…...
大模型之Chat Markup Language
背景 在笔者应用大模型的场景中,对话模型(即大模型-chat系列)通常具有比较重要的地位,我们通常基于与大模型进行对话来获取我们希望理解的知识。然而大模型对话是依据何种数据格式来进行训练的,他们的数据为什么这么来进行组织,本…...
分布式链路追踪系统Skywalking的部署和应用
一,背景 随着业务的扩张,系统变得越来越复杂,由前端、app、api、微服务、数据库、缓存、消息队列、关系数据库、列式数据库等构成了繁杂的分布式网络。 当出现一个调用失败的问题时,要定位异常在哪个服务,需要进入每一…...
canvas绘制动态视频并且在视频上加上自定义logo
实现的效果:可以在画布上播放动态视频,并且加上自定义的图片logo放在视频的右下角 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthd…...
分类预测 | MATLAB实现基于BiGRU-AdaBoost双向门控循环单元结合AdaBoost多输入分类预测
分类预测 | MATLAB实现基于BiGRU-AdaBoost双向门控循环单元结合AdaBoost多输入分类预测 目录 分类预测 | MATLAB实现基于BiGRU-AdaBoost双向门控循环单元结合AdaBoost多输入分类预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 1.MATLAB实现基于BiGRU-AdaBoos…...
Kotlin 协程(线程)切换
常用协程切换函数 withContext 是Kotlin协程中的一个常用协程函数,它的作用是切换协程的执行上下文(线程或调度器)。具体来说,withContext 的主要功能如下: 切换执行上下文:withContext 允许你从一个执行上…...
分布式Trace:横跨几十个分布式组件的慢请求要如何排查?
目录 前言 一、问题的出现? 二、一体化架构中的慢请求排查如何做 三、分布式 Trace原理 四、如何来做分布式 Trace 前言 在分布式服务架构下,一个 Web 请求从网关流入,有可能会调用多个服务对请求进行处理,拿到最终结果。这个…...
【计算机毕设选题推荐】口腔助手小程序SpringBoot+Vue+小程序
前言:我是IT源码社,从事计算机开发行业数年,专注Java领域,专业提供程序设计开发、源码分享、技术指导讲解、定制和毕业设计服务 项目名 基于SpringBoot的口腔助手小程序 技术栈 SpringBootVue小程序MySQLMaven 文章目录 一、口腔…...
【C/C++笔试练习】初始化列表、构造函数、析构函数、两种排序方法、求最小公倍数
文章目录 C/C笔试练习1. 初始化列表(1)只能在列表初始化的变量 2.构造函数(2)函数体赋值(3)构造函数的概念(4)构造函数调用次数(5)构造函数调用次数ÿ…...
SAP HCM SCHEMA-001 AMT=*与FILLF功能
导读OPERATION:Operation 是 SAP HCM 薪资 / 时间计算的 “最小执行单元”,负责对工资类型、时间类型、内部表进行读写、计算、判断、写入等原子操作。它被封装在 PCR 中,由 Function 调用,最终在 Schema 中按流程执行,共同实现复…...
c++ Protobuf解决数据传输瓶颈面试精讲
1. 什么是 Protobuf?Protobuf(Protocol Buffers) 是一种轻量级的数据序列化协议,由 Google 开发。它可以用于结构化数据的序列化和反序列化,使得数据在不同系统之间进行传输和存储更加高效。与 XML 和 JSON 等常见的数据交换格式…...
如何在 Supabase 中安全实现用户“鼓掌”计数(防刷、防重放、防越权)
本文详解如何通过 rls 策略 合理数据建模,在 supabase 中安全实现用户交互式操作(如虚拟鼓掌),杜绝前端恶意请求篡改计数,兼顾安全性与可扩展性。 本文详解如何通过 rls 策略 合理数据建模,在 supab…...
别再手动切换了!用Creo二次开发自动识别钣金件与实体零件,提升设计效率
别再手动切换了!用Creo二次开发自动识别钣金件与实体零件,提升设计效率 在机械设计领域,Creo作为主流的三维CAD软件,其强大的建模能力深受工程师青睐。然而,当设计任务涉及混合类型的零件——特别是同时包含钣金件和实…...
还在终端里用 Claude Code?CC GUI 把 AI 编码工作流搬回 IDEA
导读Claude Code 很火,Codex 也很火,但对一批长期驻守 IntelliJ IDEA 的开发者来说,真正影响效率的,往往不是模型本身,而是使用姿势。代码写在 IDE 里,工程上下文在 IDE 里,排查问题在 IDE 里&a…...
ZYNQ以太网开发避坑指南:详解1G/2.5G PCS/PMA IP核的MDIO与AN配置那些事儿
ZYNQ以太网开发避坑指南:详解1G/2.5G PCS/PMA IP核的MDIO与AN配置那些事儿 在嵌入式系统开发中,以太网功能几乎是现代设备的标配。对于使用Xilinx ZYNQ系列FPGA的开发者来说,1G/2.5G Ethernet PCS/PMA IP核是实现高速网络连接的关键组件。然而…...
ECharts热力地图配色翻车?这份‘颜值即正义’的视觉映射(visualMap)调参指南请收好
ECharts热力地图视觉优化指南:从专业配色到极致体验 当你需要在汇报会议或公共大屏上展示数据时,一张配色糟糕的热力地图可能会让观众瞬间失去兴趣。我曾见过一个案例:某省级政务平台的数据大屏上,热力地图使用了高饱和度的红绿对…...
别再死磕微积分了!用Python的SymPy库5分钟搞定拉普拉斯变换解微分方程
用SymPy解放双手:5分钟自动化求解微分方程的工程实践 微分方程是工程和物理学中的常客,从电路分析到机械振动,它无处不在。传统解法需要记忆变换公式、手工计算代数方程、处理部分分式分解——这些步骤不仅耗时,还容易在符号运算…...
免费入门指南:Unity URP卡通渲染着色器快速上手方案
免费入门指南:Unity URP卡通渲染着色器快速上手方案 【免费下载链接】UnityURPToonLitShaderExample A very simple toon lit shader example, for you to learn writing custom lit shader in Unity URP 项目地址: https://gitcode.com/gh_mirrors/un/UnityURPTo…...
3大核心功能揭秘:Snap Hutao如何让你的原神冒险效率翻倍?
3大核心功能揭秘:Snap Hutao如何让你的原神冒险效率翻倍? 【免费下载链接】Snap.Hutao 实用的开源多功能原神工具箱 🧰 / Multifunctional Open-Source Genshin Impact Toolkit 🧰 项目地址: https://gitcode.com/GitHub_Trendi…...
