1. 程式人生 > >最新HTML網頁教你呼叫本地Python程式

最新HTML網頁教你呼叫本地Python程式

首先宣告,在HTML中呼叫本地Python程式是十分不推薦的,一是因為網頁呼叫本地程式的許可權正在被取消,二是因為真不如JS寫直接,三是隻能在自己本地呼叫。

但如果你要用,像我一樣,需要在課堂上進行一個Python程式碼的展示,並且想要一個好看的UI介面的話,可以這樣來做,做起來還是很容易的,但這樣的展示僅限於需要彈框的,比如我的人臉檢測是彈窗式,如果需要內嵌在網頁內部的話是不行的。

我所使用的環境是 windows+python3+chrome

1、編寫你的python程式碼

我們就先寫一個簡單的hello world!吧,新建一個py檔案,寫入程式碼:

print('hello world!') 2、編寫你的HTML程式碼

完整程式碼在後面,其中的重點部分在於java指令碼中寫的一個函式(function exec1),你不用改,後面呼叫了這個函式。你只需要修改你需要執行的檔名,下面就是呼叫的方法:

exec1('python hello.py') # 括號內的意義是 用 python 來執行 hello.py 這個檔案,!注意python是已經新增到環境變量了的。 # 執行python程式一般有兩個exe方法,一個是直接的python,另一種是pythonw,兩者的區別是:用python執行會先開啟一個命令列的黑窗,而pythonw不會彈出黑窗(比如你要執行一個輸出的程式,就沒法顯示出來了)   # or use this    exec1('cmd') # 括號內的意義是 直接執行 cmd 這個可執行檔案。同理你把python檔案打包成exe檔案也是可以直接採用這種方法的。 啟動IE核心後,會在本地產生一個資料夾,我也是在執行時發現的,我的是在C:\Users\Jerry\AppData\Local\IE Tab\11.4.23.1。你也可以使用絕對路徑,但要注意Windows下是用的雙斜線,不然也是無法執行的。

新建一個html檔案,完整程式碼在這裡:

<!DOCTYPE html>   <html>     <head>       <meta charset="utf-8">       <script language="javascript">          function exec1(command)      {            var ws = new ActiveXObject("WScript.Shell");             ws.run(command);     }          </script>      </head>      <body>     <div id="header">     <h1>簡單呼叫python</h1>     </div>       <div id="nav">         簡單呼叫python                  <a href="hello_world.py" target="show"> 程式碼 </a>             <input type="button" value="執行 python" onclick="exec1('python')" />  <!--呼叫python在這裡-->          <br/>        </div>       <div id="section">              <h2>程式碼框 </h2>         <iframe name="show" id="show" width="1100" height="466"/>                 </div>   </body>  </html>

---------------------