0

我正在尝试在 MacOS 上使用 Sikuli 进行一些自动化。我从这里下载了 SikuliX IDE 2.0.4,从这里下载了Jython 2.7.2 ,并按照文档中的说明将它们两个放在同一个目录中。

我正在运行 MacOS Catalina 10.15.7,这是 Java 版本:

java version "1.8.0_281" 
Java(TM) SE Runtime Environment (build 1.8.0_281-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.281-b09, mixed mode)

我可以打开 SikuliX IDE,但是当我单击“截屏”按钮时,所有应用程序都会被最小化,包括我想要截屏的应用程序,即使我打开我想要的应用程序也会发生这种情况自动化并使用 SikuliX IDE 快捷方式截取屏幕截图。

发生这种情况时,只有 SikuliX 菜单栏、背景和泊坞窗可见。即便如此,如果我尝试在泊坞窗中截取图标的屏幕截图,在 SikuliX IDE 上打开的图像仅包含背景,就好像泊坞窗是透明的一样。

我尝试使用 MacOS 的默认工具截取屏幕截图,但在这种情况下,当我尝试运行click()与脚本崩溃一样简单的指令时。

这是尝试单击泊坞窗中的 Finder 图标的输出:

在此处输入图像描述

[error] script [ create_new_folder ] stopped with error in line 1
[error] FindFailed ( finder_icon.png: (86x78) in R[0,0 1680x1050]@S(0) )
[error] --- Traceback --- error source first
line: module ( function ) statement 
1: main (  <module> )     click("finder_icon.png")
[error] --- Traceback --- end --------------

我在 MacOS 上找不到很多关于 SikuliX 的东西。关于如何使用 SikuliX 在 MacOS 上截屏和自动化操作的任何建议?

4

1 回答 1

1

背后的原因:在标准 macOS 中,现在阻止截屏。

解决方案:这必须在 Prefs -> Security&Privacy -> Privacy -> ScreenRecording 中允许。

于 2021-02-04T15:15:06.027 回答