【发布时间】:2017-12-25 06:31:46
【问题描述】:
我已经使用烧瓶(Python 2.7)建立了一个网站。我正在尝试根据该系统的规范将设置文件发送到访问我的网站的系统。因此,我想访问该系统的 cmd 提示符并找到一些东西: 1. 电脑正在使用哪个操作系统和位 2.是否安装了python。
到目前为止,我一直在使用本地主机,所以我的代码看起来还不错。
(这个是检测系统的os)
def index():
var3 = subprocess.call('uname -o > z2.txt' , shell = True)
if (var3 == 0):
return render_template("ch1.html") #ch1 says its ubuntu
else :
return render_template("ch2.html") #ch2 says its windows
我之前在其他 Windows 电脑上检查过,它显示的窗口让我觉得我的代码没问题。现在,当我检查 ubuntu 时,它仍然显示窗口。现在我意识到 subprocess.call 在我系统的 cmd 本身而不是在访问我的网站的系统上调用命令。 如何访问访问系统的 cmd 以查找他们的操作系统、位以及是否使用 PYTHON/Flask 在他们的系统上安装了 python。
注意:访问我网站的所有系统都将连接到同一个 wifi(如果有帮助的话)
编辑:从我的网站是否在访问者的系统上安装操作系统、位和 python 是我的主要标准。可以通过访问其他系统的 cmd 或任何其他可能的方式。
【问题讨论】:
-
这听起来像是 X-Y 问题。你为什么在乎?很可能有更好的方法来完成您想做的事情。
-
我正在尝试根据客户端系统的规范从我的网站(使用烧瓶制作)向客户端系统发送设置文件。因此,我关心规格。更好的方法如何?拜托,任何帮助都会非常有帮助。
-
您可能需要为每个您支持的操作系统创建一个安装包,并且只需让安装程序(将在客户端系统上运行)确定安装系统需要做什么。或者,也许您应该将您的应用程序构建为一个操作系统原生包,并将您的运行时依赖项(如 Python)捆绑到您的安装程序中,如果这对您有效的话。
标签: python flask subprocess