从下拉列表中选择项目

问题描述 投票:-1回答:2

我需要使用selenium从下拉列表中选择一个项目。该网站看起来像这样

 <div class="chosen-drop">
  <div class="chosen-search"><input type="text" autocomplete="off"></div>
  <ul class="chosen-results">
     <li class="active-result style="" data-option-array-index="0">Please choose your main activity</li>
     <li class="active-result" style="" data-option-array-index="1">Animals and Pets</li>
     <li class="active-result" style="" data-option-array-indexx="2">Art and Culture</li>
     <li class="active-result" style="" data-option-array-index="3">Babies</li>
     <li class="active-result" style="" data-option-array-index="4">Beauty and Personal Care</li>
     <li class="active-result" style="" data-option-array-index="5">Cars</li>
     <li class="active-result" style="" data-option-array-index="6">Computer Hardware and Software</li>
        </ul>

如何选择/点击“Cars”/ data-option-array-index =“5”?

python selenium dropdown
2个回答
0
投票

我相信你可以使用一个简单的css选择器来获取你想要的元素:nth-​​child。例如,要获得2个条目,您可以编写这样的选择器:

.chosen-drop ul> li:nth-​​child(2)


0
投票

你可以这样做,因为我知道java所以我在java中编写代码。首先列出LIST中的所有定位器,然后使用For- Each和If else,您可以选择特定项目并执行操作

//Locate all elements in list
List<WebElement> dropEle= driver.findElements(By.xpath("//ul[@class='chosen-results']//li"));
for (WebElement tempEle : dropEle) {
//condition to check text
            if(tempEle.getText().contains("Cars"))
            {
             // Do operations
                System.out.println("Pass");
            }
        }
© www.soinside.com 2019 - 2024. All rights reserved.