确认链接是否被禁用 selenium/Python

用户1345331

下面的代码从浏览器的无序列表中找到正确的链接,但是该EC.element_to_be_clickable功能不起作用,因为如果链接不可点击,它将需要刷新浏览器(再次检查)。

相反,是否有任何方法可以检查链接是否被禁用(如果不是,则单击()?该链接将采用以下格式之一

<a class="Button disabled">Purchase</a>
<a class="Button">Purchase</a>

下面的代码

from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC

try:
    if len(driver.find_elements(By.XPATH, "//span[text()='$30.00']/../following-sibling::div/a[text()='Purchase']")) > 0:
        print("Found, now attempting to click link")
        WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//span[text()='$30.00']/../following-sibling::div/a[text()='Purchase']"))).click()
阿里奇诺

检查链接是否被禁用,即。如果它的类包含“禁用”,只需在它的类中查找它:

try:
    if len(driver.find_elements(By.XPATH, "//span[text()='$30.00']/../following-sibling::div/a[text()='Purchase']")) > 0:
    elem = driver.find_element(By.XPATH, "//span[text()='$30.00']/../following-sibling::div/a[text()='Purchase']")
        print("Found, now attempting to click link")
        if "disabled" in elem.get_attribute("class"):
            print("Link disabled! Refreshing page.")
            driver.refresh()
        else:
            elem.click()

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

检查服务是否被禁用

PowerShell 检查服务是否被禁用

使用硒检查元素是否被禁用

检查标签内的输入是否被禁用

Visual Studio Team Services“链接”按钮被禁用

如何获得检查属性是否被禁用的功能?

测试元素是否在量角器中被禁用

artifactory 的“允许内容浏览”功能是否更改或被禁用?

Angular2 ElementRef nativeElement检查元素是否被禁用

.Net youtube 数据 API。检测嵌入是否已被禁用?

检查所选下拉菜单的道具是否被禁用

如何检查用户是否在Firebase Auth中被禁用

如何在 Bootstrap Datepicker 中检查日期是否被禁用?

python selenium检查此文本字段是否被禁用

如何检查我的root密码(登录)是否被禁用?

检查剪贴板是否在javascript中被禁用

如何在xinput中检查输入设备是否被禁用?

UIButton 被禁用 - Swift

索引被禁用时

JButton 不能被禁用

MVC 4操作链接弹出框是否确认删除?

测试点击【React】后组件中的每个按钮是否被禁用

如何使用react-testing-library检查Material-ui MenuItem是否被禁用

使用复选框 - 无法检查复选框是否被禁用

身份验证时如何检查用户是否在 Firebase 中被禁用?

ADSI 查询,我正在尝试查找标识本地帐户是否被禁用的标志

查询任意 html 元素,例如查看它是否被禁用,使用shinyjs

“运行是否登录用户”的任务计划程序选项被禁用

如何测试 NavigationView 菜单项是否在 Espresso 中被禁用或启用?