从php调用python脚本时显示pyautogui错误
我正在尝试使用pyautogui模块。如果我从控制台运行脚本,一切正常。当我尝试从php(shell_exec)执行python脚本时,apache2错误日志中出现以下错误:从php调用python脚本时显示pyautogui错误,php,python,python-3.x,pyautogui,Php,Python,Python 3.x,Pyautogui,我正在尝试使用pyautogui模块。如果我从控制台运行脚本,一切正常。当我尝试从php(shell_exec)执行python脚本时,apache2错误日志中出现以下错误: Traceback (most recent call last): File "test.py", line 2, in <module> import pyautogui File "/usr/local/lib/python3.5/dist-packages/pyautogui/__ini
Traceback (most recent call last):
File "test.py", line 2, in <module>
import pyautogui
File "/usr/local/lib/python3.5/dist-packages/pyautogui/__init__.py", line 115, in <module>
from . import _pyautogui_x11 as platformModule
File "/usr/local/lib/python3.5/dist-packages/pyautogui/_pyautogui_x11.py", line 160, in <module>
_display = Display(os.environ['DISPLAY'])
File "/usr/lib/python3.5/os.py", line 725, in __getitem__
raise KeyError(key) from None
KeyError: 'DISPLAY'
下面是php:
$command = escapeshellcmd('/usr/bin/python3 test.py');
$output = shell_exec($command);
echo $output;
尝试
xhost+
并通过类似os.environ['DISPLAY']=:1的方式手动导出python中的DISPLAY
变量,其中:1是显示变量的内容。尝试xhost+
并通过类似os.environ['DISPLAY'的方式手动导出python中的DISPLAY
变量=:1
其中:1是显示变量的内容
$command = escapeshellcmd('/usr/bin/python3 test.py');
$output = shell_exec($command);
echo $output;