首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么这个元素是不可交互的?Python (硒)

为什么这个元素是不可交互的?Python (硒)
EN

Stack Overflow用户
提问于 2020-01-10 01:40:09
回答 1查看 495关注 0票数 0

我真的很难理解为什么这个元素是不可交互的。

我尝试过通过span文本、类名、使用ActionChains来定位它。没什么。

我做错了什么?

Python:

代码语言:javascript
运行
复制
menu = browser.find_element_by_xpath("//span[text()='OK']").click();
actions = ActionChains(browser)
actions.move_to_element(menu)
actions.click(menu)
actions.perform()

EN

回答 1

Stack Overflow用户

发布于 2020-01-10 01:48:09

元素是不可交互的,因为它是一个span --通常,span元素不是用来接受点击的,它们只是用来包含和显示文本的。您可能会更幸运地尝试使用Javascript,或者尝试定位跨度上一层的元素。我还会在按钮上调用WebDriverWait,以确保在尝试与其交互之前正确加载它:

代码语言:javascript
运行
复制
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

# invoke WebDriverWait to locate the div element that is one level above the span
menu = WebDriverWait(browser, 10).until(EC.element_to_be_clickable((By.XPATH, "//div[span[text()='OK']]")))

# click the menu
menu.click()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59669474

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档