我有一个用例,我需要从浏览器执行本地python脚本并显示返回的输出。
我使用react-js编写了我的网络应用程序。
我目前的解决方案是启动一个jupyter笔记本的本地实例(假设客户端已在运行它)并让用户执行预先填充的第一个单元格,但我希望能够直接从浏览器执行此操作。 / p>
答案 0 :(得分:1)
由于安全原因,网页无法从浏览器运行任意操作系统命令(例如执行python脚本)
服务器必须为要调用的网页提供API(请注意,Jupyter Notebook正在使用它自己的服务器来执行浏览器中指定的命令 - python代码不会直接在浏览器中执行)
有很多方法可以启动python web服务器,我个人推荐Flask:http://flask.pocoo.org/
答案 1 :(得分:0)
如果您希望使用Python编程但是在浏览器中执行代码,则需要:
A)在客户机上运行某种python程序(与浏览器分开),它会监听并允许浏览器使用某种Api(Rest等)连接到它;
或者B)将您的Python转换为客户端Javascript,您将其注入到网页客户端视图中。有几种工具支持它,例如https://www.transcrypt.org或http://pyjs.org
或者C)使用允许客户端Python在浏览器中使用的库,例如http://www.skulpt.org(基本上类似于B),但它是透明的)