0


【零基础专属方法】html调用本地python程序进行交互 前后端交互

倔强的项目界面展示🤔

前后端交互python文件咸鱼版!

你好!
这里是一个普通C9在读硕士生😁
近期为了项目的界面展示操碎了心

老师:界面就是几行代码的事,一天就学会了。。。
老师:和python程序交互也不会太难吧,不需要前后端集成,基本需求达到就行。。。
我:好的老师,我去学😶

理清思绪,从头开始学了!

前后端交互思路

  • 必要的技术点:
  1. HTML ,搭建前端代码框架
  2. CSS , 为你的前端代码布局
  3. JS,实现前端的点击保存、写文件等操作
  4. PYTHON,自己项目的可执行程序(需要实现输出-实时输入-输出:前后端交互功能) 比如:python文件1. 输出1到10,在2. 输出为6时(交互点),程序3.等待前端输入,接收到输入后4. 对输入进行处理,最后5. 输出交互后的结果。
  • 重难点:
  1. 实现前端调用python?- 前后端框架flask 说笑了学不会😶。。。- JS调用命令行cmd执行python文件 666就是你了😎
  2. 实现python读取前端数据?- 打包数据流 说笑了还是学不会😶。。。- JS保存txt文件,python读取txt文件 666就是你了😎

直接上图展示成果

  • 整体界面布局(可以自己添加图片、文字)
  • 只能IE内核下的浏览器打开(交互需要 ACTIVEX插件只有IE内核:保证安全性)

在这里插入图片描述

  • 下拉框介绍自己的项目

在这里插入图片描述

  • 点击执行按钮(调用cmd执行python文件)
  • 程序执行到设置好的交互点(输出值 == 6),进入循环读取交互txt文件(文件不为空时跳出循环

在这里插入图片描述

  • cmd可以最小化,不要关掉(关了 = 杀死进程
  • 如果cmd闪一下就结束:
  1. 代表程序执行完毕
  2. 程序报错(如果调试没问题,多半是文件路径的问题)
  • 点击continue,显示交互前的python输出

在这里插入图片描述

  • 前端输入交互值,点击finished(将输入值写进txt文件)

在这里插入图片描述

  • python程序读取到交互txt文件中的值,经处理后返回显示

在这里插入图片描述

漂亮的代码

<!DOCTYPEhtml><html><head><metacharset="utf-8"><title>interface</title><linkrel="stylesheet"type="text/css"href="starbuzz.css"></head><body><headerclass="top"><div><span>&copy; 项目编号:
            </span><br><span>&copy; 项目名称:</span></div></header><divid="tableContainer"><sectionid="drinks"><div><h1>项目名称
                    <selectid="sel"><optionvalue=""selecteddisabledhidden>模式选择</option><optionvalue="模式1">模式1</option><optionvalue="模式2">模式2</option><optionvalue="模式3">模式3</option></select><pid='moshi'>模式选择:&nbsp;&nbsp;</p></h1><br><h2>功能描述:</h2><pid="func"></p></div><divclass="task"><h1>详细介绍</h1><br><!-- <img src="images\task.png" class="ta"> --></div></section><sectionid="blog"><divid="result"><buttonclass='button4'onclick="exec1('python  C:/Users/GZH/Desktop/HTML/python.py')">执行
                    后端程序</button></p><iframename="result"width="500"height="300"scrolling="no"frameborder="3"id="task1"></iframe><p>程序输出信息:</p><iframeclass="ifr1"name="result1"width="500"height="170"scrolling="no"frameborder="3"id="task2"></iframe><ahref="C:/Users/GZH/Desktop/HTML/res1.txt"target="result"class="tar"></a><ahref="C:/Users/GZH/Desktop/HTML/res2.txt"target="result1"class="tar"></a><p><buttonclass="btn">Continue</button></p></div></section><sectionid="blog1"><h1class="people">前后端交互</h1><br><divid="input"><textareaid="data"rows="3"cols="40"background:transparent></textarea><buttonclass="btn2"onclick="input()">Finished</button></div></section></div><scripttype="text/javascript">'点击continue显示内容'
        window.onload=function(){var doc = document.getElementById("task1").contentDocument || document.frames["result"].document;var doc1 = document.getElementById("task2").contentDocument || document.frames["result1"].document;var tex1 = document.querySelector('#data')var sel = document.querySelector('#sel');
            sel.options[0].selected =true;
            tex1.value ='';
            doc.body.innerHTML ='';
            doc1.body.innerHTML ='';var btn = document.querySelector('.btn');
            btn.onclick=function(){// console.log(1111);
                document.querySelectorAll('.tar')[0].click();
                document.querySelectorAll('.tar')[1].click();input2();}var func = document.getElementById('func');//首先获得下拉框的节点对象;var select = document.getElementById("sel");
            select.onchange=function(){//1.如何获得当前选中的值?var value = select.value;if(value ==='模式1'){
                    func.innerHTML ='功能1'}if(value ==='模式2'){
                    func.innerHTML ='功能2'}if(value ==='模式3'){
                    func.innerHTML ='功能3'}}}</script><scriptlanguage="JavaScript">'执行python程序'functionexec1(command){var ws =newActiveXObject("WScript.Shell");
            ws.run(command);//exec 和 run
            ws =null;}'前端输入'functioninput(){
            text = document.getElementById("data").value;//获得网页文本框的值var strFile ="C:/Users/GZH/Desktop/HTML/human.txt";//定义文件保存的路径var objFSO =newActiveXObject("Scripting.FileSystemObject");var objStream = objFSO.CreateTextFile(strFile,true);
            objStream.WriteLine(text);//写值
            objStream.Close();}
          console.log(str);</script></body></html>
  • 以上代码可以参考JS的功能实现,其他的不能直接使用

详情代码请查看: gitee主页:https://gitee.com/GZHzzz
博客主页:CSDN:https://blog.csdn.net/gzhzzaa

交流联系vx:在这里插入图片描述

  • Fighting!😎

在这里插入图片描述

whileTrue:
    Go life

在这里插入图片描述

谢谢点赞交流!(❁´◡`❁)

标签: python javascript css

本文转载自: https://blog.csdn.net/gzhzzaa/article/details/122352167
版权归原作者 南城果宝 所有, 如有侵权,请联系我们删除。

“【零基础专属方法】html调用本地python程序进行交互 前后端交互”的评论:

还没有评论