以下是我提出的其他问题(问题链接为:Webelement List and choose only one) 有人可以协助我遇到的情况: 我有以下WebElements列表:
Double Chance (Ordinary Time)
1X2 (Ordinary Time)
12 (Full Event)
Odd/Even (Full Event)
Over / Under (Full Time)
Odd/Even (Ordinary Time)
Halftime / Fulltime (Ordinary Time)
Over Under (Ordinary Time)
Double Chance (1st Half)
1X2 (1st Half)
在@ f1sh
的帮助下找到确切的元素(并且我只需要上面列出的一个,即1X2(普通时间))List<WebElement> allAvailsbleMarkets = driver.findElements(By.xpath("//main[@class='be-root__main']/be-match2/be-single-view-layout/div[3]\n"
+ "//be-markets-page2/div/div/ul/li//be-outcomes2//h4"));
for(WebElement e:allAvailsbleMarkets){
if("1X2 (Ordinary Time)".equals(e.getText())){
//go to that element
//an element has been found, so stop the checking loop:
break;
}
}
但是,现在我忘了我有几种语言并创建了数组列表如下:
public static List<String> ordinaryTimeTranslations = Arrays.asList(
"1X2 (Ordinary Time)",
"1X2 (Regularno vreme)",
"1X2 (Ordinær Spilletid)",
"1X2 (Reguläre Zeit)"
}
所以,我的问题是如何(并且卡在那里)拾取形式数组列表完全匹配(在上面的例子中它是英文版)。尝试使用上面的代码,但它与我的List Webelement不匹配Array列表中的需要 结果是永远不会找到所需的Array成员。 提前谢谢
答案 0 :(得分:1)
你只需要在第一个循环中添加另一个循环:
for (WebElement e : allAvailsbleMarkets)
for (String txt : ordinaryTimeTranslations) {
if(txt.equals(e.getText())) {
// Match found
break;
}
}