【问题标题】:getting an error of element not interactable or element not visible得到元素不可交互或元素不可见的错误
【发布时间】:2019-02-22 09:47:31
【问题描述】:

得到错误

selenium.common.exceptions.ElementNotInteractableException:消息:元素不可交互

(或)

selenium.common.exceptions.WebDriverException:消息:搜索查询代码行无法访问 chrome。

我相信搜索字段隐藏在网站中。帮助代码。

from selenium import webdriver  
from selenium.webdriver.common.by import By  
from selenium.webdriver.support.ui import WebDriverWait  
from selenium.webdriver.support import expected_conditions as EC  
from selenium.common.exceptions import TimeoutException  
from selenium.webdriver.common.keys import Keys

#Step: Create new browsing session
options = Options()  
options.add_argument("start-maximized")   
browser = webdriver.Chrome("C:/Users/ashita.gadagotti/Downloads/chromedriver_win32/chromedriver.exe",chrome_options=options) 

#Search Query    
browser.get("https://equiniti-kyc.com")   
search_input = browser.findElement(By.className("primary-navigation__search-input").isEnabled()  
search_input.send_keys('ISO')  
search_input.submit()

【问题讨论】:

  • 对不起。我没有投反对票

标签: python python-3.x selenium selenium-webdriver selenium-chromedriver


【解决方案1】:

是的,它会显示 ElementNotInteractableException,因为首先您需要点击显示在您网站右侧的搜索按钮,然后它会启用搜索框,然后您需要使用发送键并按下按钮。

 browser.find_element_by_xpath("//i[@class='primary-navigation__list-item-link-icon-search']//*[@class='icon']").click()

那么您需要使用发送键进行搜索输入。

 search_input =browser .find_element_by_xpath("//div[@class='primary-navigation__search-container primary-navigation__search-container--shown']//input[@placeholder='Search']")
 search_input.send_keys('ISO') 

然后您需要再次单击搜索按钮,以便所有结果都会显示在您的屏幕上

browser.find_element_by_xpath("//div[@class='primary-navigation__search-container primary-navigation__search-container--shown']//input[@value='GO']").click()

这里我使用了绝对 xpath,但您可以使用动态 xpath。它不适用于类名,因为相同的类名分配给了其他元素。所以它会混淆应该选择哪个元素。在这种情况下使用绝对 xpath 或动态 xpath。

【讨论】:

  • 这不是一个好的 xpath 结构。你应该找到 closets xpath 选项。
  • 是的,这就是为什么我写了使用动态 xpath 而不是这个。
  • 你刚刚从 chrome 或 firefox 复制了xpath,甚至没有检查壁橱选项。
猜你喜欢
  • 2021-07-08
  • 2021-10-28
  • 1970-01-01
  • 2021-10-20
  • 2021-02-23
  • 1970-01-01
  • 2015-06-08
  • 1970-01-01
  • 2021-08-02
相关资源
最近更新 更多