如何从网页调用Python脚本

问题描述 投票:0回答:2

我对 Python 和 Web 应用程序还很陌生,因此对于可能出现的术语/关键字混淆表示歉意。

我有一个运行 json-rpc 服务器的 Python 脚本,导出设备的一些管理 API。 我编写了另一个 Python 脚本来实现 CLI 控制应用程序(使用 Python 的 cmd 模块)。一切都在 Ubuntu12.04 机器上运行。

现在,我想用一个非常简单的网页替换 CLI 应用程序(它被称为 Web 应用程序吗?或者 Web 服务?也许是 WSGI?或者其他什么?)。该页面应该提供一种调用 API 的方法,并使用用户设置的参数,并可能显示结果。 最好的方法是什么(最短的学习曲线和最短的开发时间......)?

我应该编写一些 PHP 代码(通过搜索操作系统,这似乎是一种流行的方法)并从中调用另一个 Python 脚本吗? 我可以完全用 Python 来完成吗(可能是的,但是会容易吗?)?

任何提示/方向/建议将不胜感激,谢谢!

php python python-2.7 web json-rpc
2个回答
10
投票

您可以通过 php 运行 python 脚本,该脚本输出到浏览器。

基本上,你必须这样从 php 调用 python 脚本:

$command = "python /path/to/python_script.py 2>&1";
$pid = popen( $command,"r");
while( !feof( $pid ) )
{
    echo fread($pid, 256);
    flush();
    ob_flush();
    usleep(100000);
}
pclose($pid);

注意:如果您在Python代码中运行任何

time.sleep()
,它不会在浏览器上输出结果。 对于完整的代码工作,请访问如何从 php 执行 python 脚本并在浏览器上显示输出


0
投票

如果 API 和您的页面位于同一服务器上,您可以使用 javascript 和 ajax 来实现此目的。用 javascript 编写的 json-rpc 库很少,列表位于 Wikipedia

© www.soinside.com 2019 - 2024. All rights reserved.