【问题标题】:How to click that element with Selenium WebDriver如何使用 Selenium WebDriver 单击该元素
【发布时间】:2021-03-24 09:21:41
【问题描述】:

即使是文本,我也可以在没有自动测试的情况下登录时点击

我试过了:

element2 = WebDriverWait(driver, 300).until(EC.presence_of_element_located((By.XPATH, '/html/body/app-root/app-inquiry-main/div[2]/div[2]/div[2]/div[2]/div/app-tuselection/div/div[2]')))
element2.click()

快照:

【问题讨论】:

  • Edit您的问题使用基于文本的html,并更好地分享网页的URL。
  • 单击:在此处输入图像描述我已经添加了基于文本的 html 的图像,但我无法共享 url

标签: python selenium xpath css-selectors webdriverwait


【解决方案1】:

想要的元素是Angular元素,要点击元素而不是presence_of_element_located(),你需要为element_to_be_clickable()诱导WebDriverWait,你可以使用以下Locator Strategies之一:

  • 使用CSS_SELECTOR

    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "li.navlinks.ng-star-inserted > div > span"))).click()
    
  • 使用XPATH

    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//li[@class='navlinks ng-star-inserted']//span[text()='050 ENGINE ATTACHMENT PARTS']"))).click()
    
  • 注意:您必须添加以下导入:

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

【讨论】:

    猜你喜欢
    • 2021-09-29
    • 1970-01-01
    • 2012-08-10
    • 2013-07-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-05
    • 2020-12-22
    相关资源
    最近更新 更多