Selenium - 点击链接

Jam*_*ing 2 java selenium selenium-webdriver

我试图点击列表中的链接.从截图中可以看出我试图点击"阿尔及利亚"链接.我要怎么去那儿?

捕获列表和元素

Css如下 - #\ 33\2c ALG

xpath是 - //*[@ id ="3,ALG"]

我试过通过xpath和cssSelector找到它,但没有运气

ale*_*cxe 5

By.linkText() 定位器非常适合这里:

driver.findElement(By.linkText("Algeria")).click();
Run Code Online (Sandbox Code Playgroud)

您可能还需要添加显式等待以等待元素存在:

WebDriverWait wait = new WebDriverWait(webDriver, 10);

WebElement link = wait.until(ExpectedConditions.presenceOfElementLocated(By.linkText("Algeria"))); 
link.click();
Run Code Online (Sandbox Code Playgroud)

您可能还需要在单击链接之前打开列表:

WebDriverWait wait = new WebDriverWait(webDriver, 10);

WebElement linkList = wait.until(ExpectedConditions.presenceOfElementLocated(By.className("oList"))); 
linkList.click();

WebElement link = wait.until(ExpectedConditions.elementToBeClickable(By.linkText("Algeria"))); 
link.click();
Run Code Online (Sandbox Code Playgroud)