我在尝试获取python列表时遇到了一些麻烦。
我正在使用Selenium Web Driver,特别是Chrome,并且我有下一个“按钮”:
<button id="btn" class="btn btn-default dropdown-toggle" type="button" data-toggle="dropdown" aria-expanded="false">Nope</button>
<ul id="ulDropdownNivel2" class="dropdown-menu">
<li>
<a href="#">text1</a>
</li>
<li>
<a href="#">text2</a>
</li>
<li>
<a href="#">text3</a>
</li>
</ul>
所以..我尝试使用Selenium Wd的Select.class,但是,这是一个按钮,并且该类无法在其中使用...尝试在<ul>
上使用它,但不能使用既不选择...
不能像这样使用smh:
dropdoun = Select(driver.find_element_by_id('ID'))
for elm in dropdoun{ print(elm.text())}
试图找到一种遍历项目的方法...但是我什么也没得到
我想出了一种通过xPath单击的方法,但它对我不起作用,导致text1,text2,text3等,因此每次您打开网络时都会更改顺序
有什么主意吗?
编辑:
我在这里需要的是遍历每一项,然后选择与“ text1”,“ text2”或“ text3 ...”匹配的项。
答案 0 :(得分:0)
我认为您应该单击下拉菜单按钮:
opendropdownButton = driver.find_element_by_id("btn").click()
//here should be wait if now works
dropdownElements = driver.find_elements_by_xpath("//ul [@id="ulDropdownNivel2"]//a")
for elm in dropdownElements{ print(elm.text())}