python-3.x - 我如何用 Selenium (python) 引用这个元素?
问题描述
所以我试图自动化这个简单的事情,我想点击一个图像。这是HTML:
<div class="guild-inner" draggable="false" style="border-radius: 15px;">
<a draggable="false" class="avatar-small" href="/channels/223259649967652887/381675339702599690" style="background-image: url("https://cdn.discordapp.com/icons/223259649967652887/2be8d9ec8759056fabe8caa306c632c8.png");">
</a>
</div>
这是我的代码:
def find_tc():
driver.find_element_by_xpath('//a[@href="/channels/223259649967652887/381675339702599690"]').click()
wait(5)
这是错误:
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//a[href="/channels/223259649967652887/381675339702599690"]"}
我必须通过 href 引用它,因为这是唯一独特的东西。所有图像都是动态定义的,所以我也无法通过它的编号来引用图像。提前致谢!(硒的新手)
解决方案
好的,所以问题是我试图在页面未完全加载时找到元素。所以我不得不在开始搜索元素之前放置一分钟的睡眠时间......因为java脚本仍在后台加载。仍然有任何决定页面是否已完全加载,包括 java 脚本而不是随机睡眠时间?快乐学习!
推荐阅读
- python-sphinx - 警告:toctree 包含对不存在文档的引用
- javascript - 将 span 标签中的值插入 SQL 数据库
- hyperledger-fabric - 链码已实例化,但未出现在实例化代码列表中
- flutter - 如何在 Flutter 的 Scaffold.drawer 中保持小部件的状态?
- android-studio - 在 Android Studio 中创建项目时,由于以下提到的错误,Gradle 同步失败:
- c# - 添加 hamburger.png 后如何将徽标添加到 xamarin 表单中的主详细信息页面模板
- elasticsearch - 在文本“xman”中搜索标题“X-man last stand”的问题
- sql - IIS 导致 SQL Server 中的 SQL 进程负载过高
- python - 在 Python 中添加和初始化枚举类变量
- java - 活动“MainActivity”未在 AndroidManifest.xml 中声明,尽管它存在