我已经搜索了所有相关的问题,有很多类似的问题,但我的问题是
如何从 php 调用我导入了一些非标准库/模块的 python 脚本
更具体地说,我有一个 .py 文件 test.py,我在其中导入了 pycurl 和 bottlenose,这是一个亚马逊 API 包装器。这两个模块都不在标准库中。所以文件看起来像
import pycurl
import bottlenose
...
print "hello!"
然后我做了一个php文件,test.php
<?
$output = array();
exec("/home/my_user_name/local/Python-2.7/bin/python test.py", $output, $ret_code);
var_dump( $output);
echo $ret_code;
?>
test.php 和 test.py 都在同一个目录下。更重要的是,如果我跑
php test.php
在我的终端中,它没有问题。成功输出“hello”,返回码为0,表示程序正常退出
但是,当我在浏览器www.someurl.com/test.php 上对其进行测试时,出现了一些错误。我逐行跟踪,发现错误发生在“import pycurl”和“import bottlenose”。
我还尝试打印出 sys.path,它确实包含了瓶颈的路径。
有人可以帮忙吗?
谢谢!!