python - 我正在尝试在树莓派 4 的后台运行 pyautogui 程序
问题描述
我正在使用 pyautogui 来自动化我的树莓派 4 的东西,我想在我的树莓派启动后立即运行 python 程序
我使用的代码是:sudo nohup python3 main.py &
我所有其他没有python pyautogui 包的程序都可以正确执行,但这没有!
我知道错误在 pyautogui 包中,我希望该包用于我的项目
出现的错误是:
File "./server.py", line 14, in <module>
import pyautogui as pya
File "/usr/local/lib/python3.7/dist-packages/pyautogui/__init__.py", line 249, in <module>
import mouseinfo
File "/usr/local/lib/python3.7/dist-packages/mouseinfo/__init__.py", line 223, in <module>
_display = Display(os.environ['DISPLAY'])
File "/usr/lib/python3.7/os.py", line 678, in __getitem__
raise KeyError(key) from None
KeyError: 'DISPLAY'
INFO: Stopping reloader process [1006]
如果我运行相同的命令,即:sudo nohup python3 main.py &
登录并打开终端然后输入此命令后,这将完全按预期工作。
我认为该错误可能是由于未初始化显示
我的 python 程序包含此代码
import pyautogui
pyautogui.moveTo(0,100)
请注意,上面的程序只是为了演示..如果这可行,那么我将实现其他很棒的东西
解决方案
推荐阅读
- javascript - 如何访问复选框值并将其传递给ajax
- html - Chrome DevTools 的网络选项卡中大量没有活动
- c++ - 以下代码如何每次都为唯一的调用堆栈唯一地实例化模板函数?
- html - 在我的横幅中的两个按钮之间创建一个空间
- ios - 如何将 cookie 字符串从 allHTTPHeaderFields 转换为 HTTPCookie
- azure-ad-b2c - Azure AD B2C 从自定义 UI 模板中去除 html 标记
- vb.net - 如何在新线程中修改文本框值
- oracle - 用于检查值是从 http 还是 https 开始的 Oracle 过程
- vba - 如何检查范围是否包含唯一值?
- java - 批量大小不适用于 Google Guice + JPA + Hibernate