如何使用Selenium点击扩展按钮?

问题描述 投票:0回答:1

我试图在firefox中验证已加载的扩展,但代码对我来说不起作用,html是附加的,xpath是。//*[@name="extension"]

在firefox浏览器上打开url about:addons

htmlExtensions

火狐浏览器版本是77,geckodriver 0.26.我得到异常元素未找到。

selenium selenium-webdriver xpath css-selectors webdriverwait
1个回答
0
投票

像这样使用。

 //Wait for element to be clickable
    WebDriverWait wait = new WebDriverWait(driver, 15);
    wait.until(ExpectedConditions.elementToBeClickable(By.name("extension")));

    driver.findElement(By.name("extension")).click();

0
投票

按照 html 您已经提供了点击加载的扩展,你必须诱使 WebDriverWait 对于 可点击的元素 您可以使用以下任何一种方式 定位策略:

  • # imports
    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support import expected_conditions as EC        
    
    WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "button.category[name='extension']>span[class='category-name'][data-l10n-id='addon-category-extension']"))).click()
    
  • new WebDriverWait(driver, 10).until(ExpectedConditions.elementToBeClickable(By.xpath("//button[@class='category' and @name='extension']/span[@class='category-name' and text()='Extensions']"))).click();
    
© www.soinside.com 2019 - 2024. All rights reserved.