我在使用Selenium Python选择Bootstrap DropDown
时遇到问题。
我的代码没有元素ID和元素名称。通常,我们可以通过ID或名称找到它。因此,我尝试使用find_element_by_xpath
。
我发现引导DropDown
无法通过选择功能来选择。
我必须选择一个Department字段。该部门具有财务,人力资源和信息技术的价值。
这是我的代码:
此代码适用于当我单击“部门”字段时:
<input type="text" readonly="readonly" autocomplete="off" placeholder="Select" class="el-input__inner">
此代码用于部门的价值:
<li data-v-3f24b47c="" class="el-select-dropdown__item">
<span>Finance</span></li>
<li data-v-3f24b47c="" class="el-select-dropdown__item"><span>Human Resources</span></li>
<li data-v-3f24b47c="" class="el-select-dropdown__item selected"><span>Information Technology</span></li>
请忠告。
答案 0 :(得分:0)
Selenium的Select对象应该与HTML Select标签一起使用,如果您没有任何Select标签,则需要将下拉占位符和嵌套条目视为单独的对象,并按以下方式进行访问:< / p>
driver.find_element_by_xpath("//input[@placeholder='Select']").click()
driver.find_element_by_xpath("//span[text()='Finance']").click()
#etc
演示(假定为https://getbootstrap.com/docs/4.0/components/dropdowns/#single-button-dropdowns页)
driver.get('https://getbootstrap.com/docs/4.0/components/dropdowns/')
driver.execute_script("arguments[0].scrollIntoView(true);",
driver.find_element_by_xpath("//a[@href='#single-button-dropdowns']"))
driver.find_element_by_id('dropdownMenuButton').click()
有关使用XPath和朋友的locating DOM elements的更多信息:
答案 1 :(得分:0)
您可以使用CSS选择器
driver.find_element_by_css_selector