我正在编写selenium代码来检查与特定日期匹配的td元素的内容。
这是我的代码:
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver",
"C://chromedriver.exe");
WebDriver driver = new ChromeDriver();
String baseUrl = "http://espn.go.com/nba";
String endPoint = "/team/schedule/_/name/chi/year/2015/chicago-bulls";
// launch browser and direct it to the Base URL
driver.get(baseUrl + endPoint);
WebElement table_element = driver.findElement(By.cssSelector(".mod-container.mod-table.mod-no-header-footer"));
List<WebElement> tr_collection = table_element.findElements(By.xpath("div/table/tbody/tr"));
for (WebElement trElement : tr_collection) {
List<WebElement> td_collection = trElement.findElements(By.xpath("td"));
if (td_collection.get(0).getText().equals("Wed, Oct 29")) {
WebElement tdElement = td_collection.get(2);
System.out.println(tdElement.getText().split("\\n")[1]);
break;
}
}
// close browser
driver.close();
}
这里我获取table
的所有行,然后检查第一列是否有值&#34;星期三,10月29日和#34;,如果匹配则获取第3列值。
有没有办法直接查找其值匹配&#34;星期三,10月29日和#34;的td
元素?或者这个简化的逻辑?