【发布时间】:2018-01-29 23:38:07
【问题描述】:
您好,我正在尝试在 Raspberry Pi 上运行的 apache2 服务器上使用 PHP 中的 pyautogui 库执行 Python 脚本。从命令行执行 Python 脚本时,我没有遇到任何问题,但是通过 PHP 的“shell_exec”执行此操作时,我收到以下错误消息:
apache2中的error.log:
Traceback(最近一次调用最后一次):文件 “/home/pi/Projects/Python/wakeUp.py”,第 2 行,在导入 pyautogui 文件中 “/usr/local/lib/python3.4/dist-packages/pyautogui/init.py”,行 115,从 .将 _pyautogui_x11 导入为 platformModule 文件 "/usr/local/lib/python3.4/dist-packages/pyautogui/_pyautogui_x11.py", 第 160 行,在 _display = Display(os.environ['DISPLAY']) 文件中 “/usr/lib/python3.4/os.py”,第 633 行,在 getitem 中引发 KeyError(key) from None KeyError: 'DISPLAY'
Python 脚本(test.py):
#!/usr/bin/python3
import pyautogui
pyautogui.moveTo(25, 25, duration=1)
pyautogui.click()
PHP 脚本(index.php):
<?php
shell_exec("python3 /home/pi/Projects/Python/test.py");
?>
我已经被这个问题困扰了好几个星期了,一切都是分开工作的,但是当我把它放在一起时,我会收到错误消息,如果有人可以提供帮助,我将不胜感激。谢谢。
【问题讨论】:
标签: php python raspberry-pi apache2 pyautogui