品牌 资讯 搭配 材料 时尚 热点 行业 首饰 玉石 行情

[Python+Html]基于http.server库与局域网实现手机与电脑通信的可行方案

2023-06-19 10:25:52 来源:哔哩哔哩

本专栏由个人独立创作,仅在哔哩哔哩平台发布


(资料图)

编程仅为个人兴趣,尚未系统性学习编程,水平不行或有逻辑性错误请见谅

效果图:

0.所需库

http.server   

os  

keyboard  

threading 

1.http.server库

http.server为python自带库,正如官方文档所言:“这个模块定义了用于实现 HTTP 服务器的类”,我们可通过在cmd中执行:

python -m http.server

建立简单服务器,效果如下:

之后注意自己服务端ip地址(ipconfig),在浏览器中输入服务器ip:8000(eg:192.168.0.112:8000)即可访问建立服务器的文件夹根目录(所以是可以指定根目录的,只要在想要的文件夹中输入cmd就行):

此外,官网也给出了在.py文件中的搭建方式,效果同上(py文件在哪里根目录在哪里):

那么有了服务器,我们怎么编写自己的网页呢?

2.SimpleHTTPRequestHandler

不妨我们来看看官方文档中的描述:

可以看到,在官方文档中,指出了http.server有一类比较特殊,它是搭建服务器网页的核心要素,具体与网页相关函数方法如下:

我们可以把do_GET函数近似理解为前端,即显示在用户页面上的内容,而do_POST函数理解为后端,即服务器响应用户操作事件,两者间通过form表单的post功能相联系。

因此我们或许可以继承并修改SimpleHTTPRequestHandler类来建立网站。

所以,具体如何操作呢?可惜的是,翻阅官方文档并未给出具体答案。。。

3.网页建立

在网络上查阅后,我找到了一篇类似文章:

其中具体编写了GET端与POST端代码:

GET端

POST端

仔细研究后发现,参数"datas"是链接get与post的重要桥梁,其一般形式为:

b'xxxxx(GET 函数参数)'

求助:有没有大佬知道前面为什么有"b"

那么有了参数datas建立的桥梁,我们似乎就可以通过判断datas具体数值,从而执行对应命令,我的方案如下:

3.1submit按钮

经过多次尝试,我发现在html按钮中只有submit能正常实现功能(尝试button+JavaScript未果,水平不行请见谅),且仅添加submit有严格要求,格式如下:

<input type="submit" name="xxxx" value="xxx"/>

需要保证name值与value值同时有定义(无需保持一致)方可传参。对应datas为:

b'xxxx(name值)=xxx(value值)'

有没有更好的方法?

具体代码如下图所示:

3.2客户端与电脑端的链接

正如上文所示,个人方案比较粗暴:直接判断datas传入参数从而执行对应命令

目前所能执行的有:①通过os模块打开指定程序(cmd)

②通过keyboard模块使用快捷键:Ctrl+D,ALT+F4等(Clean,Crash)

需要注意的是,最好使用threading库进行多线程,以防主进程卡死的可能性。

将要添加的功能:①控制电脑音乐的播放,下一曲等

②添加旋钮控制电脑音量

③将音乐歌词显示在手机上

4.存在问题

在编入html代码后便无法再次实现源代码中“Directory listing for ”目录浏览,以实现类似微信文件传输助手功能。

当每监听并完成一项task后,其页面通常跳转至“./post_page”,造成的结果是无法持续监听。个人的解决方法是在post_page设置页面每隔0.5s请求返回原页面。代码如下:

3. 暂未找到除 submit按钮之外其他实现do_GET()与do_POST()函数链接方式(参考文献较          少,还未系统性学习python,html,水平菜请见谅)

参考文献:

https://blog.csdn.net/qq_44159028/article/details/118099689

https://docs.python.org/zh-cn/3/library/http.server.html

https://zhuanlan.zhihu.com/p/92482007

标签:

相关文章

[Python+Html]基于http.server库与局域网实现手机与电脑通信的可行方案

​本专栏由个人独立创作,仅在哔哩哔哩平台发布编程仅为个人兴趣,尚未系

2023-06-19 10:25:52

【热闻】东安县召开新能源项目建设推进会

​今日永州讯(通讯员唐诗琴)6月16日上午,东安县召开新能源项目建设推

2023-06-19 09:55:00

深度探访锦湖中国研发中心 实力诠释世界级创新科技 世界最新

​6月16日,全球知名轮胎制造商锦湖轮胎在位于天津的中国研发中心举办名

2023-06-19 09:48:56

全球最新:大藤峡水利枢纽工程右岸第4台机组正式投产发电

​记者从广西大藤峡水利枢纽开发有限公司获悉,6月18日20时,大藤峡工程

2023-06-19 09:33:15

南昌新建区四联村征迁快3年 安置房至今未动工 村民:太不像话_信息

​南昌新建区四联村征迁快3年安置房至今未动工村民:太不像话

2023-06-19 09:21:46

“618”大促火热进行!商品热销,涉税事项咋处理?-环球快资讯

​剩余内容,展开全文胡珊珊于红光永轩又到“618”年中大促,购物旺季再

2023-06-19 09:23:09

如何使用灭火器灭火(如何使用灭火器)_环球滚动

​今天小红来为大家带来的是如何使用灭火器灭火,如何使用灭火器,让我们

2023-06-19 09:01:01

梅西中国行球赛主办方声明:对球迷欢乐情绪表示理解

​“2023阿根廷vs澳大利亚国际足球邀请赛”主办方声明6月15日,梅西领衔

2023-06-19 08:51:38

济南轨交二期6条线路何时通车?最新解答来了|今日最新

​济南轨道交通二期规划的6条地铁线路何时通车?济南至济阳有轨电车何时

2023-06-19 08:47:55

张艺谋悔恨女人后悔吗?

​在阅读此文之前,辛苦您点击一下“关注”,既方便您进行讨论和分享,又

2023-06-18 22:03:29

爱大运·乐动蓉城 成渝德眉资文旅交流联动在新津展示

​封面新闻记者赖芳杰6月16日,“成渝地·巴蜀情”——“成渝德眉资”文

2023-06-18 21:28:35

观点:HelloKitty将50岁,卡通角色凭什么年收十亿美金?没嘴巴是必杀技

​真想不到,HelloKitty马上50岁了!这只没有嘴巴,没有表情带着蝴蝶结的

2023-06-18 20:35:58

【天天快播报】帝王画像集[六五]日本篇5奈良时代

​四十三,元明天皇1,馬堀法眼喜孝2,御歴代百廿一天皇御尊影3,元明天

2023-06-18 20:09:16

【速看料】入伍时间是参加工作时间吗 入伍时间

​1、今年新兵提前10天走,第一批12月1号就走,其余的是5--10日左右分批

2023-06-18 19:16:45

环球今日讯!他质问欧洲议会:凭什么“教训”中国

​欧洲议会的爱尔兰籍议员米克·华莱士质问欧洲议会凭什么对香港事务指手

2023-06-18 18:46:11

二次报销需要什么条件山东_二次报销需要什么条件 全球观速讯

​1、在基本医疗保险定点医疗机构发生的,符合城乡居民基本医疗保险报销

2023-06-18 17:46:21

m4r格式转换为mp3在线(m4r格式转换为mp3)

​m4r格式转换为mp3在线,m4r格式转换为mp3这个很多人还不知道,现在让我

2023-06-18 16:58:20

中国电信兰州分公司广场西口营业厅重装开业 服务全新升级 微动态

​6月18日上午,东方红广场西口热闹非凡,在喜庆的舞狮队表演和鼓声齐鸣

2023-06-18 16:40:50

世界快资讯丨蓝色协议想要账号不被封,做到以下几点!

​蓝色协议也是正式开启公测了,但万代的封号力度大大超乎了玩家们的想象

2023-06-18 16:04:29

当前快讯:2023淮安中小学暑假放假时间最新 什么时候放暑假

​2023年淮安中小学幼儿园暑期放假时间安排在7月1日,秋季开学报到时间为

2023-06-18 15:12:27

天天微速讯:体操亚锦赛中国队再夺两金

​原标题:体操亚锦赛中国队再夺两金新华社北京6月17日电中国体操协会17

2023-06-18 14:58:15

他们进楼宇宣传安全知识 全球快消息

​长江日报大武汉客户端6月18日讯为推动安全生产责任落实,提升民众安全

2023-06-18 14:11:12

全球观天下!买个便宜货百科_买个便宜货

​1、这2个机器的镜头是一样的,不一样的地方是K750C刷W800软件后还是没

2023-06-18 13:50:40

全球热资讯!“梅姑娘”上场刷业绩 气象台预警防大雨

​刚刚入梅,勤劳的“梅姑娘”就开始“冲业绩”。昨天下午,南京市气象台

2023-06-18 12:49:33

天猫好房 618 活动拉开帷幕,携手商户打造线上大促狂欢

​天猫好房回血618住进理想生活年中大促于今日正式启动,活动时间为6月18

2023-06-18 11:50:04

延安:人人讲安全 个个会应急

​今年6月是全国第22个安全生产月。连日来,延安市开展形式多样的安全宣

2023-06-18 11:14:15

环球关注:叮!爸爸“拍了拍”你,爱意+100

​今天是父亲节《文博日历》为你带来古时候爸爸们的带娃“实况转播”他们

2023-06-18 10:37:39

水星记伴奏歌词(水星记歌词含义)-全球快看

​大家好,小乐来为大家解答以上的问题。水星记伴奏歌词,水星记歌词含义

2023-06-18 10:03:58

焦点快播:『白内障』白内障如何治疗

​白内障是一种常见的眼科疾病,而且近几年,随着各种电子产品的问世

2023-06-18 09:45:24

焦点消息!1.52亿美元!博迈科再获MODEC一艘 FPSO上部模块订单

​6月15日,博迈科发布公告,博迈科海洋工程股份有限公司(以下简称“公

2023-06-18 08:46:36