下拉选择框select元素的定位,报错:ElementNotInteractableException

Posted momoon

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了下拉选择框select元素的定位,报错:ElementNotInteractableException相关的知识,希望对你有一定的参考价值。

 

 
源码如图:
 
技术图片
直接使用Select类进行选择,selector(driver.find_element_by_id("Agency")) 会提示如下信息
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.ElementNotInteractableException: Message: element not interactable: Element is not currently visible and may not be manipulated
# 下拉选择框随机选择
def selector(self,element):
    ele = Select(element)
    count_options = len(ele.options) - 1
    ele.select_by_index(random.randint(0, count_options))
 
display元素没有定义,直接通过js修改是无效的。必须通过修改元素的style样式的display属性才成功。
技术图片
 
技术图片
agency_ele = driver.find_element_by_id("Agency")
js = """ele = document.getElementById("Agency");
ele.style.display=‘block‘;
"""
driver.execute_script(js)
selector(agency_ele)

 

技术图片

 

 

技术图片

以上是关于下拉选择框select元素的定位,报错:ElementNotInteractableException的主要内容,如果未能解决你的问题,请参考以下文章

怎样选择下拉菜单的元素

第三章:Select 下拉选择框的练习

selenium 怎么操作下拉框

Selenium-Select类型的下拉框定位方法

python selenium怎么定位图中这种下拉框的选项?

下拉框处理(select)