转载并整合自网络。
通过网站使用php shell_exec(python3 .py) 的时候,无法调用pandas 库,会提示,no module name pandas。但是调用sys, optget等库却没有问题,这是因为系统路径的原因。
解决方法
(1)使用sys.path,查看命令行里面运行的python 和网页中运行的python它们的系统路径有什么不同,将不同的部分添加到网页运行的系统路径中。
import sys
sys.path.append('path_need_to_be_added')
*但是在我运用时不太有效
(2)将需要调用的库以及其相关的库全部复制到一个已知的系统路径下面。在我的http服务器中,python读取的系统路径是/var/www/script/(这个目录是python script 所在的目录),所以我将pandas以及和它相关几个库全部复制到该路径下。
值得注意的是,我在sript/ 下新建立了一个lib/ 目录来储存库,所以在system.path中,我们要将这层目录包括到里面,既 /var/www/script/lib/,否则,系统仍然无法识别该库。可能这与系统路径识别的方式有关,但对这里理解的较少,不清楚具体的原因。