首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Unix中使用pyautogui

在Unix中使用pyautogui
EN

Stack Overflow用户
提问于 2022-03-29 09:48:24
回答 1查看 112关注 0票数 0

我有一个可以在无头模式下执行一些UI操作的测试脚本。

我正在努力让它在Unix上工作。我从下面的错误开始:

代码语言:javascript
运行
复制
    import pyautogui
../../Libs/pyautogui/__init__.py:540: in <module>
    from . import _pyautogui_x11 as platformModule
../../Libs/pyautogui/_pyautogui_x11.py:161: in <module>
    _display = Display(os.environ['DISPLAY'])
../../../../anaconda3/lib/python3.9/os.py:679: in __getitem__
    raise KeyError(key) from None
E   KeyError: 'DISPLAY'

考虑到一些建议,我尝试了导出DISPLAY=:0、导出DISPLAY=localhost:0.0等等,但始终得到以下错误:

代码语言:javascript
运行
复制
ImportError while loading conftest '/home/sengutr/E2E_Automation_Framework/e2e-automation-framework/TestCases/conftest.py'.
../conftest.py:3: in <module>
    import pyautogui
../../Libs/pyautogui/__init__.py:540: in <module>
    from . import _pyautogui_x11 as platformModule
../../Libs/pyautogui/_pyautogui_x11.py:161: in <module>
    _display = Display(os.environ['DISPLAY'])
../../Libs/Xlib/display.py:89: in __init__
    self.display = _BaseDisplay(display)
../../Libs/Xlib/display.py:71: in __init__
    protocol_display.Display.__init__(self, *args, **keys)
../../Libs/Xlib/protocol/display.py:89: in __init__
    self.socket = connect.get_socket(name, protocol, host, displayno)
../../Libs/Xlib/support/connect.py:87: in get_socket
    return mod.get_socket(dname, protocol, host, dno)
../../Libs/Xlib/support/unix_connect.py:127: in get_socket
    raise error.DisplayConnectionError(dname, str(val))
E   Xlib.error.DisplayConnectionError: Can't connect to display "localhost:0.0": [Errno 111] Connection refused

搞不懂这意味着什么,知道吗?

EN

回答 1

Stack Overflow用户

发布于 2022-05-04 17:58:21

你可以试着把这个放在你的终端上:

代码语言:javascript
运行
复制
export DISPLAY="$(grep nameserver /etc/resolv.conf | sed 's/nameserver //'):0"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71659827

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档