用python写一个服务,开放一个接口,前端访问接口的时候启动我的automaster.py的程序,automaster.py需要数字参数,从前端接收,然后开始运行
时间: 2023-06-15 12:03:06 浏览: 114
可以尝试使用 Flask 框架来实现这个服务。首先需要安装 Flask:
```shell
pip install flask
```
然后创建一个 Flask 应用,代码如下:
```python
from flask import Flask, request
import subprocess
app = Flask(__name__)
@app.route('/start_automaster', methods=['POST'])
def start_automaster():
num = request.form.get('num')
subprocess.Popen(['python', 'automaster.py', num])
return 'OK'
if __name__ == '__main__':
app.run()
```
在这个应用中,我们定义了一个 `/start_automaster` 的接口,当前端通过 POST 请求访问这个接口时,会从请求参数中获取一个名为 `num` 的数字参数,并且使用 `subprocess` 模块启动 `automaster.py` 程序,并将 `num` 作为参数传递给它。
需要注意的是,这个接口是在本地启动的,如果需要让外部访问,需要将 Flask 的 `host` 参数设置为 `0.0.0.0`。另外,这个代码中使用了 `subprocess` 模块启动程序,如果 `automaster.py` 中有输入输出,需要使用 `subprocess` 的相关方法来处理。
阅读全文