当前位置: 首页 > 知识库问答 >
问题:

python selenium元素不可交互错误

龙繁
2023-03-14

我有两个输入文本

<input id="info.route.waypointSuggest.input0" title="search input1" class="input" type="text" autocomplete="off">
<input id="info.route.waypointSuggest.input1" title="search input2" class="input" type="text" autocomplete="off">
starting_point_path = '//*[@id="info.route.waypointSuggest.input0"]'
starting_point_element = web.find_elements_by_xpath(starting_point_path)
starting_point = input('first\n')
starting_point_element[0].send_keys(starting_point)
starting_point_element[0].submit()
time.sleep(3)
destination_path = '//*[@id="info.route.waypointSuggest.input1"]'
destination_element = web.find_elements_by_xpath(destination_path)
destination = input('second\n')
destination_element[0].send_keys(destination)
destination_element[0].submit()
time.sleep(3)
selenium.common.exceptions.ElementNotInteractableException: Message: element not interactable
  (Session info: chrome=80.0.3987.132)

通过打印元素标题,我确认了第一个和第二个输入元素都是可访问的。到目前为止,我尝试了setAttribute,executescript……但没有一个有效(或者我做了一些错误)(也许,它可能对谷歌chrome自动更新有作用?这是我现在唯一能想到的)

共有1个答案

万铭
2023-03-14

这是我为解决这个问题所做的,主要问题是(我假设)网络连接不好/低,我补充道

WebDriverWait(web, 4).until(EC.visibility_of_element_located((By.XPATH, destination_path)))

虽然starting_point_element根本没有引起任何问题,但目的地输入却是唯一引起问题的,这一点仍然很奇怪。我也尝试过不处理起始点输入元素而只处理目标点输入,但目标仍然导致了一个问题。相反(只使用起始点,而不使用目的地点),它工作得很好。但是,在找到了一个更好的internet连接之后,并且像上面那样添加了WebDriverWait代码,我就能够解决问题了,但这似乎只是一个临时的解决方案。欢迎任何其他建议。

 类似资料:
  • 我正在使用Selenium记录我在网页上的操作,但是,当我运行测试用例时,出现了一个点击操作抛出错误:元素当前不可见,因此可能无法与之交互。但是,我确信按钮是可见的,下面是它的html: 此外,这是我的Selenium IDE测试脚本: 有人知道为什么吗?提前感谢!

  • 我是新的Selenium C#NUnit。我跟着一行代码跑了 var wait=new WebDriverWait(驱动程序,TimeSpan.FromSeconds(30));等待直至(d)= 我得到了以下消息:消息:OpenQA. Selenium。元素不可交互(会话信息:chrome=89.0.4389.114)堆栈跟踪:远程WebDriver。Unpack AndThrowOnError(

  • 我试图得到某个产品的评论,但它返回一个错误。 我的代码: 它返回:硒。常见的例外。ElementNotInteractitableException:消息:元素不可交互 你能告诉我该怎么办吗?

  • 硒的新手!我正在尝试使用selenium在Craigslist上列出待售房屋。 我在从下拉选择框中选择选项时遇到问题。 我收到以下错误: 元素不可操作异常:消息:元素不可交互:元素当前不可见,可能无法操作 使用“选择”也会产生同样的错误: 该元素存在: 但这并不是棘手的: 元素不可交互异常: 消息: 元素不可交互 我注意到选择元素是隐藏的,选择由选择框上的下一个元素控制。 我可以通过激活元素并使用

  • 需要:使用Selenium更新url上的字段&单击按钮(网页截图和HTML细节如下) 希望所面临的问题是明确的,等待指导。

  • 我想抓取谷歌playstore搜索结果完全呈现的网页。 完全呈现的页面具有所有搜索项,而未呈现的页面仅具有20项。(请参阅https://play.google.com/store/search?q=best 我试图用selenium抓取页面,但得到了下面的错误信息。 以下代码由Selenuim IDE编写。 我认为出现错误是因为谷歌商店搜索结果页面有“显示更多”按钮,当它满足某些特定条件时会显示