python - 如何使用 Selenium 按类定位剑道按钮
问题描述
我正在尝试在 python 中使用 Selenium 定位并单击一个按钮。该网页是基于剑道的,这里是按钮的相关代码:
<div class="k-header k-grid-toolbar k-grid-top">
<button class="k-button k-button-icontext k-grid-excel" type="button">
我试过使用这个python代码:
driver.find_element_by_class_name("k-button k-button-icontext k-grid-excel").click()
它引发了一个异常:
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":".k-grid-excel"}
谁能建议找到按钮的更好方法?
解决方案
我最终使用 CSS 选择器找到它,我也不得不在那里等待:
wait = WebDriverWait(driver, 15)
element = wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, '#grid > div.k-header.k-grid-toolbar.k-grid-top '
'> button')))
element.click()
推荐阅读
- python - 如果嵌套 3 层或更深,Json 加载函数无法转换为字典
- visual-studio-code - 用于 bitbucket 的 vscode 拉取请求扩展
- java - spring kafka 在主题中寻找最新的可用消息
- reactjs - 从字符串构造“文件”以使用rest api上传
- pact - 如何从消费者测试中验证协议
- java - 我的前端(android)使用 Java AES 加密,而后端 Api(NodeJS)使用 CryptoJS
- cypress - 赛普拉斯自定义命令无法识别
- css - 使用带有伪元素的“过滤器:亮度()”会破坏绝对定位?
- copy-paste - 使用阅读更多脚本时如何避免布局消失?
- python - 二进制参数