用Python+selenium定位下拉框,定位不生效
只能定位到点击的,但是不能定位到下拉框里面的内容是什么原因?
用了好几种定位方式都没有效果
#定位下拉框方法
#导入模块
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import Select
import time
#定位到下拉框
driver.find_element(By.XPATH,'//*[@id="frm_editpart"]/dl[1]/dd/span/span[1]/span/span[2]')
# 下拉框位置 ul+li方式
# sel = driver.find_element(By.XPATH,'/html/body/span/span')
# sel.find_element(By.XPATH,'li'+'[{2}].format(2)').click()
sel = driver.find_element(By.ID,"select2-selectsh-container")
sel.find_element(By.ID,"select2-selectsh-result-wx94-3005").click()
time.sleep(4)
# select_by_value 方式
Select(sel).select_by_value("select2-selectsh-result-ajw4-3005")
time.sleep(1)
# 文本方式
Select(sel).deselect_by_visible_text('3003')
# index方式
Select(sel).select_by_index(5)
time.sleep(3)
也没有报错
总结来说就是先消除该下拉框的display=none,然后那些会消失的元素就任由你操作且不会消失了。
关于selenium定位下拉框中动态加载的元素定位不到或无法定位的问题_Redamancy又在写BUG的博客-CSDN博客_selenium下拉框定位不到