selenium报错“ElementNotInteractableException: Message: element not interactable: Element is not currently visible”


1、源代码:

from selenium import webdriver
import time as t
from selenium.webdriver.support.select import Select
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as ec
from selenium.webdriver.common.by import By


driver = webdriver.Chrome()
driver.maximize_window()
driver.get("http://www.baidu.com")
t.sleep(3)
driver.find_element_by_id("kw").send_keys("selenium")
driver.find_element_by_id("su").send_keys(Keys.ENTER)
# 显式等待,待元素定位
WebDriverWait(driver,10).until(ec.presence_of_element_located((By.ID,"kw")))
# 鼠标悬停
mouse = driver.find_element_by_name("tj_settingicon")
ActionChains(driver).move_to_element(mouse).perform()
driver.find_element_by_link_text("搜索设置").click()
# 隐式等待
driver.implicitly_wait(5)
# 定位下拉框
select = driver.find_element_by_name("NR")
# # 以索引的方式定位
# Select(select).select_by_index(2)
# print("下拉框选择的最新条数是:",select.get_attribute('value'))
# 以value定位
# Select(select).select_by_value("10")
# print("下拉框选择的最新条数是:",select.get_attribute('value'))
# 以文本定位
Select(select).select_by_visible_text("每页显示20条")
print("下拉框选择的最新条数是:",select.get_attribute('value'))
t.sleep(3)
driver.quit()

报错:“ElementNotInteractableException: Message: element not interactable: Element is not currently visible”意思是元素隐藏不可见

百度了很多方法,但是都没有解决此问题

加了sleep(3),然后就ok了

再取消sleep,也没有报错了


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM