【问题标题】:How can i press keyboard keys with selenium without physical keyboard如何在没有物理键盘的情况下使用 selenium 按下键盘键
【发布时间】:2017-12-24 14:56:52
【问题描述】:

我正在尝试使用 selenium 创建自动化,它将安装 chrome 扩展。 当我尝试在亚马逊虚拟机上运行这个 jar 时遇到问题, 因为当我尝试使用机器人类按 Enter 时它不起作用,因为我没有连接物理键盘。 我不能在 selenium 中使用 sendkeys,因为来自 google 的 pop 不在同一页面上,并且 selenium 无法识别它。 有什么解决办法吗?

【问题讨论】:

    标签: java selenium selenium-chromedriver


    【解决方案1】:

    在这种情况下,您可以使用“sikuli”,它基本上是使用图像识别来识别和控制 GUI 组件。你可以找到它here

    步骤是:

    1. 下载sikuli java jar
    2. 将此 jar 添加到您的构建路径
    3. 裁剪要点击的弹出窗口
    4. 为此编写所需的 sikuli 代码。

    如果它可以帮助你,请告诉我。如果你想在你的项目中添加 sikuli。我可以为你提供非常基本的 sikuli 脚本。

    【讨论】:

    • 这个sikuli不需要像机器人一样的键盘输入吗?
    • sikuli 正在使用机器人类...所以它不会在没有键盘和鼠标的虚拟机上工作...还有其他解决方案吗?
    • 不,您不需要任何键盘输入。您只需要裁剪所需元素的图像。
    • 这是来自 sikuli 网站的引述: -- 需要真实屏幕 运行 SikuliX 脚本的系统或任何使用 SikuliX 功能的应用程序必须连接真实屏幕。不支持所谓的无头系统(Java 限制)。使用 SikuliX 功能时,屏幕不应处于睡眠模式,也不应显示屏幕保护程序。它必须处于一种状态,即用户可以使用系统并在屏幕上观看正在发生的事情。 -- 使用虚拟机 在上面提到的 VM 来宾系统中运行它通常应该可以工作,但可能有一些怪癖。所以我没有任何屏幕...
    • @Pikolo 那么在没有连接物理键盘的情况下,您将很难使用运行键盘命令。请保持此线程打开,以便任何其他解决方案出现。
    猜你喜欢
    • 1970-01-01
    • 2021-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-28
    • 1970-01-01
    • 1970-01-01
    • 2022-06-27
    相关资源
    最近更新 更多