问题标签 [sikuli-x]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
442 浏览

python - SikuliX + python,编辑导入模块后出现奇怪的NameError

我发现了 SikuliX + Python 的一个奇怪行为。我的主应用程序运行没有任何问题...但是如果我对导入的模块进行任何更改,我就会出错

NameError:名称“myLib”未定义

如果我重新启动我的 SikuliX 程序,一切都会再次正常...这是非常令人讨厌的错误..我不知道如何处理..我将更详细地描述我的情况:

..................................................... .....................

我的 sikulix 项目有文件夹:

我有主应用程序的文件夹:

我的模块有文件夹:(我正在导入到主应用程序)

我的模块 myLib 的内容:

我的主要应用程序的内容:

..................................................... .....................

  • 如果我运行主应用程序,则会打印“myFunc1”。一切正常,没有任何问题。
  • 如果我运行我的模块 myLib,什么也不会发生。一切正常,没有任何问题。

  • 如果我在 myLib 模块中进行了任何不相关的更改(例如,文件末尾的新行)我得到错误:

如果我运行主应用程序以及尝试运行 myLib,我会收到此错误。

  • 如果我重新启动我的 SikuliX,一切都会再次正常... myLib 末尾的新行不再是问题。

它看起来是 SikuliX 的一些内部错误,但我对 SikuliX 不是很有经验,所以我将非常感谢您对此行为的意见。

谢谢!

0 投票
1 回答
1316 浏览

sikuli-script - Sikuli IDE 错误 - javax.script.ScriptException " 未在 nashorn:mozilla_compat.js 中第 69 行定义

我正在编写一个简单的 Sikuli 脚本。

该脚本只是如下所示的一行

点击(在此处输入图像描述

产生以下错误?

javax.script.ScriptException: ReferenceError: "Commands" is not defined in nashorn:mozilla_compat.js at line number 69

我相信我已经安装了所有依赖项。我可以要求一些帮助以解决此错误中缺少的其他内容吗?

0 投票
2 回答
1579 浏览

java - Eclipse 中的 SikuliX 错误消息 - Ubuntu - [错误] ImagePath: find: not there: imgs/spotlight.png FindFailed: imgs/spotlight.png: (0x0)

我刚刚在 Ubuntu 16.04 下安装了 SikuliX(sikulixapi-2.0.4.jar) 和 Eclipse Oxygen。测试程序如下:

但是,当我运行测试程序时,我收到以下错误消息:

[错误] ImagePath:查找:不存在:imgs/spotlight.png

FindFailed: imgs/spotlight.png: (0x0) in R[0,0 1280x800]@S(0) Line 2222,在文件 Region.java 的 org.sikuli.script.Region.wait(Region.java:2222) 中org.sikuli.script.Region.wait(Region.java:2240) 在 org.sikuli.script.Region.getLocationFromTarget(Region.java:3188) 在 org.sikuli.script.Region.click(Region.java:3806)在 org.sikuli.script.Region.click(Region.java:3782) 在 Test.main(Test.java:9)

我进行了搜索,并在https://answers.launchpad.net/sikuli/+question/668883找到了与此错误相关的另一篇文章。

我使用 Gnome 屏幕截图制作了我的第一个屏幕截图,并使用 Gimp 屏幕截图制作了另一个屏幕截图,但是在这两种情况下我仍然收到相同的错误。

正如您在下面看到的,图片spotlight.png 似乎是Eclipse 在项目中找到的。在此先感谢您的帮助。

在此处输入图像描述

0 投票
0 回答
349 浏览

python - Sikuli 脚本随机停止

我有一个简单的 SikuliX 脚本,用于在游戏中自动执行一些简单的测试任务。该脚本只是一个无限的while循环,它会在屏幕上进行一些点击和拖放一些东西。它运行正常,但有时,显然无缘无故地停止运行。有时它会运行几个小时,有时它只持续 5 分钟。整个代码就是这样:

当脚本停止时,我检查 sikulx IDE 以查看是否有任何异常抛出但没有。我还检查了终端,因为我使用命令运行它,java -jar sikulixide-2.0.4.jar但也没有看到错误消息。这里有什么问题?为什么循环不能无限期地运行?提前致谢。

编辑所以我把这两条打印消息,一个在except块中,另一个在循环结束后,并注意到当错误发生时,这些消息都没有被打印,我仍然不知道该怎么做才能找出发生了什么. 我注意到它发生的大多数(但不是全部)时间只是在运行type(Key.DOWN, Key.CTRL)/type(Key.UP, Key.CTRL)命令之后。

0 投票
1 回答
78 浏览

selenium - 在 Sikuli 中,我们可以在 UI 网页中搜索图像内容中显示的单词/文本吗?

我正在使用 Serenity 和 Selenium 来自动化包含图像的网页(大缩略图列表)。我正在检查是否有一个选项可以在 UI 中使用图像内容中显示的文本/单词进行搜索。

例如:我想查找图像是否存在于具有文本的 UI 中。我想查找图像是否存在于具有“Pexels”这个词的屏幕中。

示例图像

0 投票
1 回答
39 浏览

selenium - 如何使用 Sikuli 从桌面应用程序视图切换到 Web 视图

当我从桌面应用程序中单击一个按钮时,它会打开 chrome 浏览器。如何切换到桌面到 webview 并返回到桌面应用程序。

0 投票
0 回答
156 浏览

ruby - 终端没有使用 jruby 运行脚本

这是我第一次同时使用 JRuby 和 VS Code。我正在做一个实习项目,并在 VS Code 中打开了克隆仓库的文件夹。我能够运行昨天已经存在的 Ruby 脚本没有问题,但是现在当我尝试从终端运行它们时(与我之前所做的相同),终端将暂停一秒钟然后打印路径又好像它已经成功完成了一样,除了什么都没发生。我已经将打印语句放在脚本的第一行,它们甚至不打印。就像脚本甚至没有运行一样,除了没有错误或任何告诉我为什么它没有运行的东西。这只是 Ruby——我运行了一些 python 代码来查看是否一切都不稳定,但是 python 运行没有问题。我不知道为什么会这样!

这是它在终端上的样子:

这是Test.rb:

我还尝试注释掉 require/import 语句,所以它实际上只是puts "Hello from ruby"并且仍然没有。我什至不知道从哪里开始解决这个问题。

0 投票
1 回答
62 浏览

java - 如何摆脱在 Ubuntu 中安装 SikuliX API 所需的 OpenCV

我在我的 java 应用程序中捆绑了 SikuliX 2.0.3 Jar。在运行时,这个 jar 文件需要从 java.library.path 访问 OpenCV 库。所以,我需要在库路径(/usr/lib)上安装 OpenCV。我想知道是否有任何方法可以在我的应用程序中捆绑 OpenCV,SikuliX Jar 可以在同一个应用程序中访问这个库。我不希望客户负责安装这个 OpenCV 库,这对他们来说可能是一项繁琐的任务。如果上述情况是不可能的,那么非常感谢任何其他建议。

仅供参考 - 由于 SikuliX 是一个开源库,我可以访问它的代码。

0 投票
1 回答
65 浏览

python - Python - 尝试查找当前是否正在运行 sikuli 脚本

因此,我运行了一个 sikuli 脚本,该脚本每 10 分钟连续监视并执行一次所述动作。然而,由于各种原因,有时运行会中断,如果脚本停止运行,则无法发出警报。

所以我尝试运行一个 python 脚本,它可以监控 sikuli IDE 的窗口。当脚本运行时,窗口不再可见。因此,如果窗口再次可见,python 脚本将运行一个批处理文件,该文件将触发所需的警报。以下是我通过在此站点中查看其他示例而制作的脚本:

我在上面的代码中遇到的问题是,即使 sikuli 脚本正在运行并且我实际上看不到 IDE 窗口(带有 WindowName 的窗口),它仍然会找到它并进入 if 块。我不确定这里出了什么问题,如果窗口在任务管理器中不可见,FindWindow 应该找不到它,对吗?

0 投票
1 回答
89 浏览

python - 有什么方法可以将 pandas 等 python 库用于 Sikuli 脚本?或者我可以通过任何 python 解释器运行 Sikuli .py 文件吗?

有什么方法可以将 pandas 等 python 库用于 Sikuli 脚本?或者我可以通过任何 python 解释器运行 Sikuli .py 文件吗?

我编写了一个脚本,该脚本使用运行按钮以及通过命令行(例如C:\Users\*****\Desktop\Sikuli2\sikulixide-2.0.4.jar -r C:\Users\*****\Desktop\Sikuli2\Calculator.sikuli.

我也尝试过from sikuli import *from sikuli.Sikuli import *但我无法将脚本运行到任何 python 解释器中,比如 Jupyter。