我在我的 maven 项目中有最新的 sikuliapix 和 Selenium WebDriver 依赖项,我正在尝试自动化 Facebook 游戏。截至目前,我在 Candy Crush 游戏的关卡屏幕中,想要单击 2 级图标或 1 级图标,但 sikuli 无法识别我已经在项目文件夹中的图像。
我在这里包括了这些屏幕截图和代码。这是 Facebook 游戏链接:https ://apps.facebook.com/candycrush/
这是我的代码:
import java.util.Collections;
import java.util.concurrent.TimeUnit;
import org.openqa.selenium.By;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
import org.sikuli.script.FindFailed;
import org.sikuli.script.Pattern;
import org.sikuli.script.Screen;
public class AutomatingFbGame {
public static void main(String[] args) throws FindFailed, InterruptedException {
// TODO Auto-generated method stub
System.setProperty("webdriver.chrome.driver", "C:\\Users\\jenny
howard\\Downloads\\chromedriver_win32\\chromedriver.exe");
ChromeDriver driver = new ChromeDriver(options);
driver.get("https://www.facebook.com");
driver.manage().window().maximize();
driver.findElement(By.id("email")).sendKeys("xxxxxx@gmail.com");
driver.findElement(By.id("pass")).sendKeys("xxxxxx");
driver.findElement(By.id("loginbutton")).click();
Screen s = new Screen();
driver.manage().timeouts().implicitlyWait(50, TimeUnit.SECONDS);
driver.findElement(By.xpath("//*[@id='navItem_210831918949520']/a/div")).click();
Pattern p2 = new Pattern("l2.png");
s.find(p2);
s.doubleClick(p2);
}
}