提问人:donnynja 提问时间:5/15/2022 最后编辑:martineaudonnynja 更新时间:5/16/2022 访问量:808
使用 JavaScript 触发 Python 脚本
Trigger A Python Script By Using JavaScript
问:
我正在做一个小项目,我已经用 python 准备了后端,并使用 HTML、CSS 和 JS 准备了图形用户界面。
python 脚本不需要任何外部库,它唯一要做的就是打开一个处理了数据的 JSON 文件,因为它是一个游戏,结果是随便生成的,因此我不必将任何参数传递给脚本。 问题是我不知道如何触发脚本,因此它生成了我可以通过 JabaScript 访问的 json。
该项目的方案是这样的: index.html
Pages(文件夹)
- newGame.html
- loadGame.html
- rules.html
python(文件夹)
- python_script1.py
- python_script2.py
- python_script3.py
- main.py
具体来说,我必须在用户加载 newGame 页面或 loadGame 页面后触发脚本。
(显然 js 不是node.js是实际的客户端 JavaScript)
我做了一些研究,我发现 pyodyde 开源项目可以满足我的需求,事实是我无法弄清楚如何使用此资源将接口文件与后端文件连接起来。
答:
有一个名为 PyScript 的新库(它可以帮助您在 HTML 中运行 python),安装 cli 所需要做的就是执行以下命令:(此命令将安装 cli 而不是库)。
那么你应该执行这个命令:(注意:这会将python文件转换为html文件,因此python文件名将是html文件的名称)
它应该这样做。
HTML 代码如下:pip install pyscript-cli
pyscript wrap python_file.py
<!DOCTYPE html>
<html lang="en">
<head>
<title>Homepage</title>
<link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css"/>
<script defer src="https://pyscript.net/alpha/pyscript.js"></script>
</head>
<body>
<py-script>
Code here
</py-script>
</body>
</html>
但是,一旦我输入命令并从 python 脚本创建了 html 文件,我该如何将其连接到“newLevel”页面?
评论
溶液
好的,通过其他一些研究,我找到了解决我的问题的方法。 但首先,我要感谢你们向我推荐 PyScript 库。
我遇到的问题是我需要在pyscript标签中连接一个python文件。
起初,我不得不用关键字导入它,而不是执行文件。
但是我发现py-script标签有一个属性,你可以链接所有你想要的外部文件。import
src
所以,最后,我所要做的就是连接我的文件是这样的:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>newGame</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<py-script src= "./python scripts/test_file.py"></py-script>
<script src="script.js"></script>
</body>
<script defer src="https://pyscript.net/alpha/pyscript.js"></script>
</html>
评论