我在搜索要选择的按钮时遇到了问题。当我尝试使用
搜索它时 if (driver.getPageSource().contains("pager")) {
WebElement pageSelector = driver.findElement(By.className("pager__item pager__item--last"));
System.out.println("hello");
pageSelector.click();
}
然而,它给了我错误 - Compound class names not permitted
。我读到了关于hte问题,似乎使用csselector将是解决它而不是使用By.className
的方法。但是,我无法让csSelector工作。这是包含我正在搜索的元素的html片段。
<div class="view-content">
<div class="item-list">
</div>
<h2 class="element-invisible">Pages</h2>
<ul class="pager">
<li class="pager__item pager__item--current">1</li>
<li class="pager__item">
<li class="pager__item">
<li class="pager__item">
<li class="pager__item">
<li class="pager__item">
<li class="pager__item pager__item--next">
<li class="pager__item pager__item--last">
<a href="/blogs?date_filter[value]&field_term_programs_offices_tid=All&page=5" title="Go to last page">last »</a>
如何选择&#34; pager__item pager__item - last&#34;项目
答案 0 :(得分:1)
您可以搜索pager__item--last
类 - 根据您提供的HTML代码,它唯一地标识元素:
driver.findElement(By.className("pager__item--last"));
或者,使用CSS选择器:
driver.findElement(By.cssSelector(".pager__item--last"));
或者,进行精确的类匹配:
driver.findElement(By.cssSelector("li[class='pager__item pager__item--last']"));