selenium 下拉框非select input
时间: 2023-07-26 14:32:45 浏览: 208
如果你要处理的下拉框不是 HTML 的 select input 标签类型,而是其他类型的标签(比如 div、ul、li 等),你可以使用 Selenium 的 ActionChains 类来模拟用户交互行为,从而实现下拉框的选择。
例如,如果要选择一个下拉框的 div 标签中的某个选项,可以使用以下代码:
```python
from selenium.webdriver.common.action_chains import ActionChains
# 找到下拉框的 div 标签,并将其存储在元素对象中
dropdown = driver.find_element_by_xpath("//div[@class='dropdown']")
# 创建一个 ActionChains 对象,用于模拟用户的鼠标操作
action = ActionChains(driver)
# 将鼠标移动到下拉框上,等待下拉框出现
action.move_to_element(dropdown).perform()
# 找到要选择的选项,并将其存储在元素对象中
option = driver.find_element_by_xpath("//div[@class='dropdown']//li[text()='选项1']")
# 点击选项,完成下拉框的选择
option.click()
```
这段代码中,首先使用 find_element_by_xpath() 方法找到下拉框的 div 标签,并将其存储在 dropdown 变量中。然后,创建一个 ActionChains 对象,使用 move_to_element() 方法将鼠标移动到下拉框上,等待下拉框出现。接着,使用 find_element_by_xpath() 方法找到要选择的选项,并将其存储在 option 变量中。最后,使用 click() 方法点击选项,完成下拉框的选择。
阅读全文