我是PHP编程的新手。我需要从php执行python代码。我的Python代码包含一些外部模块。 Php代码是
$op=shell_exec('python mgs.py');
echo $op;
?>
这是我想要的代码,我需要得到确切的输出,因为我进入终端(如果错误,那也是)
python代码
import mechanize
def mgs():
a=0
flag=0
browser = mechanize.Browser(factory=mechanize.RobustFactory())
browser.set_handle_robots(False)
browser.open("http://14.139.185.88/cbcsshrCamp/index.php?module=public&page=result")
browser.select_form(nr=0)
control=browser.find_control('exam_id')
print control
control.value=['203']
browser.form["prn"]="130021069679"
browser.submit()
html = browser.response().readlines()
for i in range(0,len(html)):
if 'Failed' in html[i]:
flag=1
if flag==1:
print "Fail"
else:
print "Pass"
mgs()
。我没有在浏览器窗口上获得任何输出,但是当我尝试在终端中执行PHP代码时,它很好.. 即,(php index.php)
我的操作系统> Ubuntu的 Apache 2
答案 0 :(得分:0)
最有可能的是,python
不在执行php脚本的用户的路径中。
请改为尝试:
<?php
$op = shell_exec('/usr/bin/python3 mgs.py');
echo $op;
?>
当然,如果没有正确的解释器,请将解释器更改为正确的路径。